繁体   English   中英

选择多行和双值中的一个值

[英]Select multiple rows and one value from dual

这很难解释,但我想在第一列中显示多行,在Oracle的第二列中显示一个相同的值,如下所示:

Select ('123', '456') First, 'abc' Second from dual;

我怎样才能做到这一点?

使用union all

Select '123' First, 'abc' Second from dual
union all
select '456','abc' from dual

使用union all

select '123', 'abc' from dual
 union all
select '456','abc' from dual

另一种类似方式

 select * from (select '123' as col1 from dual
 union all
 select '456' from dual) a, (select 'abc' as col2 from dual) b

COL1    COL2
123     abc
456     abc

演示

可能最短的语法是:

select column_value first, 'abc' second
  from table(sys.odcivarchar2list('123', '456', '789', 'A1', 'B70', 'C44'))

结果:

FIRST   SECOND
------  ------
123     abc
456     abc
789     abc
A1      abc
B70     abc
C44     abc

BAM! 20更改为所需的许多行。

select level as first, 'abc' as second
from dual
connect by level <= 20;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM