我有以下看法:如何在SQL查询中填写最小值和最大值之间的所有值的范围?
select v.* from myview v;
PeriodID | StartMonth | EndMonth
102 | 1 | 4
103 | 3 | 7
104 | 4 | 11
,我需要混合这一观点与此查询(另一种观点)。
select q.* from query q;
Somevalue| AnotherValue| PeriodId
'abc' | 546 | 102
'xyz' | 147 | 103
'bnm' | 652 | 104
我需要:
Somevalue| AnotherValue| PeriodId | Month
'abc' | 546 | 102 | 1
'abc' | 546 | 102 | 2
'abc' | 546 | 102 | 3
'abc' | 546 | 102 | 4
'xyz' | 147 | 103 | 3
'xyz' | 147 | 103 | 4
'xyz' | 147 | 103 | 5
'xyz' | 147 | 103 | 6
'xyz' | 147 | 103 | 7
如果我可以从startmonth to endmonth
得到收集和符合Q加入吧,也许我能得到我所需要的。
来自:
PeriodID | StartMonth | EndMonth
102 | 1 | 4
103 | 3 | 7
104 | 4 | 11
到:
PeriodID | Month
102 | 1
102 | 2
102 | 3
102 | 4
问题被标记甲骨文,这是Oracle SQL无效。它看起来像SQL Server的答案。 – MT0
这里标签附加为SQL和问题我没有看到任何与Oracle相关的词。对不便之处 –
即使是_only_标签的'sql',您的答案将是“错误的”。标签'sql'代表*查询语言* SQL,**不代表**特定的DBMS产品。你的代码不是ANSI SQL。 SQL Server的问题将使用'sql-server'标记。这个问题从一开始就被标记为'oracle'(即使使用'plsql'而不是't-sql') –