我需要在使用concat时格式化sql输出中的列标题 例如:
SELECT '' || to_char(sysdate,'ddmmyyyy') as DATE || ',' || ENO|| ',' || NAME|| ''
FROM EMP;
会找回我
ORA-00923:找不到FROM关键字。
需要输出为:
DATE ENO NAME
-----------------
251013 7560 RAM
251013 7561 ROSS
此格式有效
SELECT to_char(sysdate,'ddmmyyyy') || ',' || ENO || ',' || NAME as "DATE,ENO,NAME"
FROM EMP
但我的问题是
ORA-00972:标识符太长
当里面的列名长度为“”超过30个字符时
例如:
SELECT to_char(sysdate,'ddmmyyyy') || ',' || ENO || ',' || NAME ||
',' || EMPLOYEE_IDENTIFICATION_NUMBER as "DATE,ENO,NAME,EMPLOYEE_IDENTIFICATION_NUMBER"
FROM EMP;
答案 0 :(得分:2)
要实现此输出,您必须像这样构建查询
SELECT to_char(sysdate,'ddmmyyyy') || ',' || ENO || ',' || NAME as "DATE,ENO,NAME" FROM EMP
答案 1 :(得分:0)
如果确实需要,您需要在SELECT
子句的末尾移动别名。此外,空字符串(''
)也可以删除:
SELECT to_char(sysdate,'ddmmyyyy') || ',' || ENO || ',' || NAME as DATE FROM EMP;