|
1
3
另一种方法
|
|
|
2
3
马丁·史密斯的解决方案比下面的好。
|
|
|
3
1
做了一些测试,结果很奇怪。如果指定
这是有道理的,因为order by应该只在联盟的末尾。但是如果在子查询中使用相同的构造,它会编译!并按预期工作:
最奇怪的事情发生在你只指定了一个
现在它随意点了工会的前半部分,但下半部分是按id点的。这真是出乎意料。同样的事情也发生在
我希望这会给出一个语法错误,但是相反,它命令联合的前半部分。所以看起来
就像Chris Diver最初发布的那样,摆脱困惑的一个好方法就是不要依赖
示例数据:
|
|
|
4
0
这样的方法应该有用:
另外,使用UNION ALL将提供更好的性能,因为db不会费心检查结果中的重复项(在这个查询中不会有重复项)。 |
|
|
Johnny T · 基于当前值的SQL合并表[重复] 11 月前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 11 月前 |
|
ojek · 如何对SQL结果进行分组和编号? 11 月前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 11 月前 |
|
|
Sax · 规范化Google表格(第一步) 11 月前 |
|
|
BarıŠUÅaklı · 如何在ON冲突更新中使用CTE中的值 11 月前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 11 月前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 11 月前 |
|
|
Nebula Tech · 在SQL Server中搜索字符串中单词的多次出现 12 月前 |