有没有办法在SQL中执行以下操作?

时间:2013-08-29 18:20:17

标签: sql

让我们假设我们有这两个表:

表1,栏目:

Field1 
1
3

表2,列:

Field1
2
4

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

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

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

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

有关如何处理此事的想法吗?

非常感谢你的帮助。

编辑:

哦,这比我想象的要容易得多,因为这个指令不是很难实现的。

谢谢大家。

3 个答案:

答案 0 :(得分:3)

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

SELECT Field1
FROM Table1

UNION ALL

SELECT Field1
FROM Table2

ORDER BY 1

答案 1 :(得分:0)

select  * from
(
  select field1 as field_value from table1
  union
  select field2 as field_value from table2

)
order by field_value asc

答案 2 :(得分:0)

你能做union all

吗?

如下所示:

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

根据您是否需要重复这两个表中的元素,使用unionUnion all