0

假设我们有这两张表:

表 1,与列:

字段1
1
3

表 2,与列:

字段1
2
4

(好吧,它们也可以以任何其他方式调用,但我想表示 table1.field1 的类型与 table2.field1 相同)。

是否可以执行返回以下内容的 SQL 查询?

[1,2,3,4],我的意思是按我想要的任何标准排序的数字,但该标准适用于两个表格。据我所知,ORDER BY 只能按列的值排序,而不是按“从低到高的数字”这样的一般标准排序。即使我相信 SELECT 指令不能融合列。我的意思是我认为我可以通过该指令实现的最佳效果是获得类似 [(1,2),(1,4),(3,2),(3,4)] 的内容,然后再进行处理,但这可能会很痛苦有很多结果。

并且应用程序需要字段位于不同的表上,我无法合并它们。

关于如何处理这个问题的任何想法?

非常感谢你的帮助。

编辑:

哦,这比我想象的要容易得多,有了这个指令并不难实现。

谢谢大家。

4

3 回答 3

3

这就是UNION声明的目的。它允许您将两个SELECT语句组合到同一个结果集中:

SELECT Field1
FROM Table1

UNION ALL

SELECT Field1
FROM Table2

ORDER BY 1
于 2013-08-29T18:25:01.997 回答
0
select  * from
(
  select field1 as field_value from table1
  union
  select field2 as field_value from table2

)
order by field_value asc
于 2013-08-29T18:25:53.740 回答
0

你可以做union all

如下所示:

Select field 1
from 
   (Select field 1 from Table 1
      Union 
    select field 1 from table 2)
order by field 1

使用unionorUnion all根据您是否需要在两个表中重复元素。

于 2013-08-29T18:26:06.857 回答