我有3个文本字段,其中用户类型表名称和2个列名称需要合并。
我应该如何将2个列值合并(合并)为1?
我使用的是oracle 11g企业
答案 0 :(得分:16)
串连?
select col1 || ' ' || col2 from tablex
答案 1 :(得分:1)
这是一个非常模糊的要求。连接值可能吗?
insert into sometable( Column1 )
values ( Column1 || Column2 );
如果需要将表名指定为INSERT,则需要使用动态SQL来实现此目的。您还需要指定目标列名吗?此示例假定您将使用PL / SQL,这可能不适合您的情况。
sql_stmt := 'INSERT INTO '|| specified_table || '(' || merge_column || ') VALUES ( :1 )';
EXECUTE IMMEDIATE sql_stmt USING column1 || column2;
http://docs.oracle.com/cd/B13789_01/appdev.101/b10807/13_elems017.htm
答案 2 :(得分:0)
您可以创建另一列(辅助列)并将其他2列替换为此列。
答案 3 :(得分:0)
在 Oracle Live 中合并列
SELECT CONCAT (ENAME, JOB) from scott.EMP
上面的命令将合并 ENAME
和 JOB
列,这两个不同的列将显示在一个列中