从不相关的表中选择不同的相同列值
Posted
技术标签:
【中文标题】从不相关的表中选择不同的相同列值【英文标题】:selecting distinct same column values from non related tables 【发布时间】:2009-06-23 14:39:31 【问题描述】:在我的数据库中,我有 3 个表,它们有 2 个相似的列,即年和月。这些表没有任何链接。
我想要做的是从这些表中选择不同的年份和月份。所以表1包含:
2009 年 5 月(多次) 2008年11月(多次) 2007年5月(多次)
表 2 和表 3 包含:
2009 年 11 月(多次) 2009年5月(多次) 2008年11月(多次) 2008年5月(多次)
我希望能够选择从 2009 年 11 月到 2007 年 5 月的完整年月列表。
我正在努力解决这个问题。
干杯
【问题讨论】:
【参考方案1】:SELECT month, year
FROM table1
UNION
SELECT month, year
FROM table2
UNION 将自动只返回不同的行。
【讨论】:
【参考方案2】:select distinct year, month from table 1
union
select distinct year, month from table 2
order by year, month
唯一的问题是因为你的月份是 alpha 表示,它不能正确排序,但我确定 oracle 有一个函数可以将月份的字符串表示转换为数字,你可以按那个排序.
【讨论】:
非常感谢。应该猜到它真的是一个工会。对于我正在做的事情,我可以按月使用订单。但是,如果有人一年中的所有月份都在使用,那么他们可以进行解码以上是关于从不相关的表中选择不同的相同列值的主要内容,如果未能解决你的问题,请参考以下文章
使用Mysql从不同名称的不同表中选择值作为贷方和借方并计算余额