如何解决如何在 MySQL 中选择一些行,然后选择其他行?
我有这个查询,它有效,但我不确定这是否是最好的方法,而且我没有得到我想要的。
我需要先选择包含在“IN”子句中的查询,然后再与其他查询合并。返回的整行必须是 40。
SELECT *
FROM (
SELECT * FROM tbl_x a WHERE id IN(11,20,30)
UNION ALL
SELECT * FROM tbl_x b WHERE exam_group='jpx' AND subject='chemistry'
) ab
GROUP BY id LIMIT 40
解决方法
下一个查询应该以简单的方式返回相同的数据:
SELECT *
FROM tbl_x
WHERE
id IN (11,20,30)
OR (exam_group='jpx' AND subject='chemistry')
ORDER BY id IN (11,30) DESC,id
LIMIT 40;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。