我在order by子句中使用FIELD函数时遇到问题.
我的情况是一个产品可以有三个类别,用户可以选择什么类别来显示.所以有三种可能的查询可以形成.这些是:
查询1
SELECT
*
FROM
my_table
WHERE
main_categories_id = 2
ORDER BY FIELD(product_condition,
'graded',
'new',
'used');
查询2
SELECT
*
FROM
my_table
WHERE
main_categories_id = 2
ORDER BY FIELD(product_condition,
'new',
'graded',
'used');
查询3
SELECT
*
FROM
my_table
WHERE
main_categories_id = 2
ORDER BY FIELD(product_condition,
'used',
'new',
'graded');
当产品条件为NULL时,它不能正常工作,因为它始终显示具有NULL值的行.我需要这些最后出现.
我已经尝试向FIELD函数添加NULL,但这似乎不起作用.
有人知道我能做到这一点吗?
谢谢你的帮助.