php – 使用MySQL的UNION中每个SELECT的不同ORDER BY

使用PHP和MySQL,有没有办法为UNION中的每个SELECT语句使用不同的ORDER BY?SELECT * FROM the_table WHERE color = blue ORDER BY price ASC LIMIT 5 UNION ALL SELECT * FROM the_table WHERE color = red ORDER

使用PHP和MySQL,有没有办法为UNION中的每个SELECT语句使用不同的ORDER BY?

SELECT * FROM the_table WHERE color = 'blue' ORDER BY price ASC LIMIT 5
UNION ALL
SELECT * FROM the_table WHERE color = 'red' ORDER BY RAND() LIMIT 10

以上陈述不起作用.看来你只能对最终结果集进行ORDER BY.有没有办法在第一个SELECT上执行ORDER BY,然后使用UNION在第二个SELECT上执行不同的ORDER BY?
最佳答案

(SELECT * FROM the_table WHERE color = 'blue' ORDER BY price ASC LIMIT 5)
UNION ALL
(SELECT * FROM the_table WHERE color = 'red' ORDER BY RAND() LIMIT 10)

作者: dawei

【声明】:西安站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部