он показывает некоторый случайный TID из Active_Tournaments
SELECT @t := @t + 1 id
FROM Active_Tournaments,
(SELECT @t := 0) AS s
Это дает каждому ряду в Active_Tournaments порядковый номер
Затем вы получаете наибольший максимальный округленный номер MAX (id) и умножаете его на случайное число .
С CEIL вы снова получаете целое число.
В первом SELECT
(
SELECT @s := @s + 1 id, TID FROM Active_Tournaments, (SELECT @s := 0) AS s
) as iT
вы снова добавляете номер строки в Active_Tournaments и выбираете только те строки, которые имеет соответствующий номер в CEIL (RAND () * MAX (id)).
Таким образом, вы получите псевдослучайные TID
Я бы добавил
select DISTINCT iT.TID
Даже если бы там большое количество строк, случайные могут дать одно и то же число.