Конечно, вы можете, но это не даст вам того результата, на который вы надеетесь. Совершенно верно, однако.
Пример:
SELECT IF(1 < 2 < 3, 1, 0) AS `value`
Возвращает «1». Это должно работать, верно? На самом деле, нет. Происходит следующее:
Is 1 < 2 ? Sure! Let's return "1" (an INT because MySQL doesn't have a boolean TRUE)
Is 1 < 3 ? Sure!
Так что же происходит, когда мы делаем это?
SELECT IF(100 < 200 < 100) AS `value`
Хорошо. Это тоже ИСТИНА (1). Потому что это происходит:
Is 100 < 200? Sure! So let's return "1".
Is 1 < 100? Yep!