問合せ結果を結合する方法、文字を直接表示する方法、代替引用符、DISTINCTを使用して重複を削除する方法



問合せ結果を結合する方法

・従業員の名前に「さん」を結合したい場合

SELECT ENAME || 'さん' AS 名前 FROM EMP;
--=結果=
/*名前
田中さん
佐藤さん
 ・
 ・
山田さん*/

このように名前の後に「||」をつけてその後、シングルクォーテーションで囲った文字列が結合され「田中」→「田中さん」という形で表示できる。


文字を直接表示する方法

・「さん」を「さ'ん」と表示させたい場合

SELECT ENAME 'さ''ん' "名前" FROM EMP;
--=結果==
/*名前
田中さ'ん
・・・
*/

前の結合では「さん」をシングルクォーテーションで囲う形だったが、今回「'さ' 'ん」と置く事でシングルクォーテーションを表示する事が出来た。

(注1)「'さ'ん'」ではエラーになってしまうので注意が必要。正しくは「'さ' 'ん'」
(注2)列名の変更で「名前」と変更する場合、ダブルクォーテーションで囲っている所に注意。



DISTINCTを使用してデータの重複を削除する方法

・データの重複を削除したい場合

[DEPTNO : 30,30,20,10,10,20という重複するデータ]

SELECT DISTINCT DEPTNO FROM EMP;
--==結果==
/*DEPTNO
30
20
10
*/

データの重複が削除され、30,20,10というデータのみが表示される。


・データの重複を複数のカラムで行う場合

[DEPTNO : 30,30,20,10,10,20]

[JOB : MANAGER , SALESMAN,CLERK,MANAGER,SALESMAN]

SELECT DISTINCT DEPTNO,JOB FROM EMP;

この記述では、「DEPTNO」,「JOB」で重複するデータをそれぞれ「OR」条件で絞り込んだデータが表示される


・「NULL」を含んだデータの重複を削除する方法

[COMM : NULL , 1400 ,500 ,300 ,1400 ,NULL ,300]

SELECT DISTINCT COMM FROM EMP;
--==結果==
/*COMM

1400
500
300
*/

「NULL」を含んだ値も「DISTINCT」では認識しており、一つのデータとして扱う。

また、「NULL」もデータの一つなので重複は削除される。

この記事が気に入ったらサポートをしてみませんか?