SELECT concat(concat('m.', COLUMN_NAME), concat(' = mtf.', COLUMN_NAME)) A
FROM all_tab_columns
where table_name like 'T_EMPLOYEE'
和我得到的結果是:pl/sql:將行聚合成一個varchar?
如何聚集AND
和行成一個varchar爲低於預期的結果:
m.a_emp_id = mft.a_emp_id AND m.a_emp_name = mft.a_emp_name
AND m.a_emp_sal = mft.a_emp_sal AND m.a_emp_dept = mft.a_emp_dept
AND m.a_emp_status = mft.a_emp_status
的'concat'功能是不經常使用的順序。通常的方法是連接運算符'||'。特別是因爲這消除了嵌套函數調用的需要。你的查詢的第一行是:'SELECT'm。' || COLUMN_NAME || '= mtf。' || COLUMN_NAME A' –