UNION after ORDER BY and LIMIT(ORDER BY 和 LIMIT 后的 UNION)
本文介绍了ORDER BY 和 LIMIT 后的 UNION的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的目标是执行两个不同的查询,然后将它们组合起来.
我的代码是:
My goal is to execute two different queries and then combine them.
My code is:
SELECT * FROM some tables WHERE ... ORDER BY field1 LIMIT 0,1
UNION
SELECT * FROM some tables WHERE ...
我收到以下错误:
#1221 - UNION 和 ORDER BY 的错误使用
#1221 - Incorrect usage of UNION and ORDER BY
ORDER BY 仅用于第一个查询很重要.我该如何执行此任务?
It is important that ORDER BY is only for the first query. How can I perform this task?
推荐答案
您可以使用括号来允许对单个查询使用 ORDER/LIMIT:
You can use parenthesis to allow the use of ORDER/LIMIT on individual queries:
(SELECT * FROM some tables WHERE ... ORDER BY field1 LIMIT 0, 1)
UNION
(SELECT * FROM some tables WHERE ...)
ORDER BY 1 /* optional -- applies to the UNIONed result */
LIMIT 0, 100 /* optional -- applies to the UNIONed result */
这篇关于ORDER BY 和 LIMIT 后的 UNION的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:ORDER BY 和 LIMIT 后的 UNION
基础教程推荐
猜你喜欢
- 如何根据该 XML 中的值更新 SQL 中的 XML 2021-01-01
- mysql选择动态行值作为列名,另一列作为值 2021-01-01
- 在多列上分布任意行 2021-01-01
- 如何在 SQL 中将 Float 转换为 Varchar 2021-01-01
- 什么是 orradiag_<user>文件夹? 2022-01-01
- 表 './mysql/proc' 被标记为崩溃,应该修复 2022-01-01
- 二进制文件到 SQL 数据库 Apache Camel 2021-01-01
- oracle区分大小写的原因? 2021-01-01
- MySQL 中的类型:BigInt(20) 与 Int(20) 2021-01-01
- 在 MySQL 中:如何将表名作为存储过程和/或函数参数传递? 2021-01-01
