はじめに
プログラマになり日々の仕事にあっぷあっぷですが
メモがてら書きます。
最近SQLを読むことが増えました!
以前まではMySQLしか触ったことがなく、最近oracleを触りだしました。
見たことない関数をよく見るので、メモがてら記事にしておきます!
SQLとは
SQL はデータベース(RDBMS)を操作するための言語です。
データベースにデータを挿入したり、検索したりする際に利用します。
SQL の言語は、「DML」「DDL」「DCL」の 3 種類に分けられます。
Oracle
Oracleは、Oracle Corporationが開発・販売するリレーショナルデータベース管理システム(RDBMS)です。主な特徴は以下の通りです。
- 世界シェアNo.1のデータベース管理システム5
- 高い堅牢性と障害耐性を持つ
- 多くのプラットフォームで利用可能
- 大規模なデータベースシステムに適している
- 高いパフォーマンスと効率的なデータ管理能力
OracleのSQL関数
LPAD関数
書式
**LPAD(strings1, length, strings2)
LPAD(文字列,桁数,うめる文字列)**
引数
strings1 : 文字列
length:調整後のバイト数
strings2:埋める文字列戻値 バイト数を調整された文字列
TRIM関数
書式
**TRIM(文字列)**
引数文字列のみの場合
--文字列の前後の半角スペースを削除する例
SELECT TRIM(' ORACLE 1Z0-061学習 ') FROM DUAL;
--文字列の前後の全角スペースは削除されない例
SELECT TRIM(' ORACLE 1Z0-061学習 ') FROM DUAL;
NVL関数
書式
**NVL(式1,式2)**
最初の引数で指定した式1を評価して値が非NULL値であればその値を返し、NULL値であれば2番目の引数で指定した式2の評価した値を返す。
SUBSTR関数
書式
SUBSTR(strings, sposition, length)
引数
strings : 切り出す文字列
sposition : 切り出し開始位置
length:切り出す文字数
戻値
切り出された文字列
例
SUBSTR(テーブルA.タイムスタンプ年月日),1,4)
|| '/'
SUBSTR(テーブルA.タイムスタンプ年月日),5,2)
|| '/'
SUBSTR(テーブルA.タイムスタンプ年月日),7,2)
// 出力値
YYYY/MM/DD
DECODE関数
書式
DECODE (expression, value1, replace1[, value2, replace2...]);
DECODE関数は、引数で指定された式の値のもとに、値を変換する関数です。
引数
expression : もとになる式の値
value : 比較する値
replace : 置き換える値
戻値
変換後の値
例
SELECT 列名1, DECODE(列名1, 1, '良品倉入', 2, '要修倉入', 3, '不再用倉入', 'その他') 列名2
FROM 表名;
おわりに
設計書と睨めっこな毎日です。。
分からない関数が出てきたら都度追加予定です。