从非相关表中选择不同的相同列值

时间:2009-06-23 14:39:31

标签: sql database oracle tsql

在我的数据库中,我有3个表有2个相似的列,年份和月份。这些表没有任何关联。

我想要做的是从这些表格中选择不同的年份和月份。那么表1包含:

2009年5月(多次) 2008年11月(多次) 2007年5月(多次)

,表2和3包含:

2009年11月(多次) 2009年5月(多次) 2008年11月(多次) 2008年5月(多次)

我希望能够在2009年11月至2007年5月期间收集完整的年份和月份清单。

我正在努力解决问题。

干杯

2 个答案:

答案 0 :(得分:4)

SELECT month, year
  FROM table1
UNION
SELECT month, year
  FROM table2

UNION将自动仅返回不同的行。

答案 1 :(得分:0)

select distinct year, month from table 1
union
select distinct year, month from table 2
order by year, month

唯一的问题是因为你的月份是alpha表示它不能正确排序,但我确定oracle有一个函数将一个月的字符串表示形式转换为数字,你可以改为排序