OracleのScottによるEMPテーブルの列があります。以下のように、「ステートメント」という名前の単一の列にすべての列を表示したいと思います。
元フォードはアナリストであり、彼のマネージャーはジョーンズであり、部門研究からの給与 3000 を持っています
キングは社長であり、彼のマネージャーはなしで、部門会計からの給与 5000 を持っています
次のようなことを試してください:
SELECT emp.ename || ' IS A ' || emp.job || ' AND HIS MANAGER IS ' || mgr.ename || ' HAVING SALARY ' || TO_CHAR(emp.sal) || ' FROM DEPARTMENT ' || dept.dname
FROM emp
INNER JOIN emp AS mgr ON emp.mgr = mgr.empno
INNER JOIN dept ON dept.deptno = emp.deptno
パイプを使用して文字列を結合できます。
SELECT 'COLUMN1' || ' ' || 'COLUMN2'
FROM DUAL
編集:
null 許容マネージャーの実際のクエリで更新します。
SELECT emp.ename || ' IS A ' || emp.job || ' AND HIS MANAGER IS ' || NVL(mgr.ename, 'NULL') || ' HAVING SALARY ' || TO_CHAR(emp.sal) || ' FROM DEPARTMENT ' || dept.dname
FROM emp
LEFT JOIN emp AS mgr ON emp.mgr = mgr.empno
INNER JOIN dept ON dept.deptno = emp.deptno