[英]SQL | LIMIT Clause | limit not achieved
我有以下查询以按颜色从 table1 获取 iPhone 并限制为 10
SELECT * FROM table1 WHERE color = 'black' LIMIT 10
上面的代码完美运行,当 table1 中的黑色 iPhone 小于 10 时,我想用红色完成 iPhone 的编号为 10,我在 table1 中也有一个查询
您可以同时过滤 colors,并进行条件排序:
SELECT *
FROM table1
WHERE color in ('black', 'red')
ORDER BY color = 'red'
LIMIT 10
条件color = 'red'
满足时产生1
,否则产生0
- 所以这实际上将'black'
放在首位。
您也可以在此处使用field()
:
SELECT *
FROM table1
WHERE color in ('black', 'red')
ORDER BY FIELD(color, 'black', 'red')
LIMIT 10
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.