Дата «вещь» называется столбцом.Столбец имеет определенный тип данных.Вопрос указывает, что столбец имеет тип данных INT(11)
.И в этом столбце хранится 32-разрядное целое число в Unix-стиле с 1970-01-01 UTC.
Если это все верно, тогда подходит первая форма запроса.Выражение с правой стороны (меньше чем сравнение) возвращает целое число секунд.
В качестве демонстрации рассмотрим это выражение:
SELECT UNIX_TIMESTAMP( NOW() + INTERVAL -6 HOUR ) ==> 1528450555
или, как оригиналзаписано
SELECT UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 6 HOUR))
возвращает эквивалентный результат.
Второй запрос может быть оценен, но автоматическое преобразование из DATETIME в числовое вернет нам целочисленное значение, например 20180608153555
(т.е. yyyymmddhhmmss), а не количество секунд с начала эпохи.
Рассмотрим демонстрацию, тип данных DATETIME оценивается в числовом контексте:
SELECT NOW() + INTERVAL -6 HOUR + 0 ==> 20180608153600
Если мы используем это выражение, сравните его сстолбец INT (11) и удалить все строки, у которых столбец INT (11) меньше этого значения, будет удалена каждая строка в таблице, значение которой не равно NULL в этом столбце.