MySQL IF
функция принимает три аргумента.
Это выражение недопустимо:
IF(product_url = 'customer')
, поскольку для IF()
предоставляется только один аргументfunction.
Мы могли бы сделать это:
IF(product_url = 'customer',1,0)
, что эквивалентно более совместимому со стандартами ANSI
CASE WHEN product_url = 'customer' THEN 1 ELSE 0 END
Сокращение MySQL также будет работать
ORDER BY product_url = 'customer' DESC
, что эквивалентно
ORDER BY CASE
WHEN product_url = 'customer' THEN 1
WHEN product_url IS NOT NULL THEN 0
ELSE NULL
END DESC