感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

【プログラミング 63時間目】 OracleのSELECT文で使う関数のまとめ

スポンサーリンク

・別名を使う

SELECT 列名 AS 別名 FROM 表名

Oracleでユーザーに値を入力させる方法
変数名に「&」(アンパサンド)をつけると、値の入力が促される。

Oracleで与えられたデータの平均を計算する関数
AVG

SELECT AVG(col_d) AS "平均" FROM tb2;

Oracleで与えられたデータの値の合計を計算する
→SUM

SELECT SUM(col_d) AS "合計" FROM tb2;

Oracleで与えられたデータ数を計算する
→COUNT

SELECT COUNT(col_d) FROM tb2;

・日時のデータを指定した形式の文字列に変換する
→TO_CHAR(日時データ,'形式を示す文字列')

SELECT TO_CHAR(SYSTIMESTAMP, 'yyyy-mm-dd hh24:mi:ss') FROM dual;
結果は・・・
TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DDHH24:M
--------------------------------------
2013-01-20 17:18:18

TO_CHAR無しだと・・

SQL> SELECT SYSTIMESTAMP FROM dual;
SYSTIMESTAMP
--------------------------------
13-01-20 17:19:05.212000 +09:00

TO_CHARの形式を表す文字列一覧

yyyy:4桁の西暦
mm:2桁の月
dd:2桁の日付
dy:曜日
hh24:24時間計式の時
mi:2桁の分
ss:2桁の秒

・システム艦橋周りの情報を取得する関数

SYS_CONTEXT('USERENV', '環境変数');

環境変数は以下の通り
SESSION_USER
IP_ADDRESS
INSTANCE_NAME
SERVER_HOST
HOST
OS_USER

・使っているOracleのバージョンを調べる

SELECT * FROM v$version;

・文字列を結合する

かCONCAT
SELECT col1 || col2 || 'さん' FROM tb1;
SELECT CONCAT(col2,'さん') FROM tb1;

Oracleであいまい検索
LIKE
%:任意の文字列
_:任意の1文字

文字列を含まないものを取り出す場合は
NOT LIKEを使う

・TABとは?
TABというのは、「存在する表やビューの名前やタイプ」などの情報が保存されている擬似的な表のこと。
TNAME列に表やビューの名前が存在する。

・NULLとは「何もない値」、「不明な値」の意味。

・NULLを検索する方法
IS NULLを使う
IS NULLで指定の列がNULLのものを出力する。

select * from tb1 where col1 is null;

・NULLでない行を検索する時
IS NOT NULLを使う

SELECT * FROM tb1 WHERE col1 IS NOT  NULL;

・表示する行数を制限する
→ROWNUMを使う

SELECT 列名 FROM 表名 WHERE ROWNUM <= 表示する行数;

もっとちゃんと学ぶなら・・・

基礎からのOracle (DVD付) (プログラマの種シリーズ)

基礎からのOracle (DVD付) (プログラマの種シリーズ)