SQLで一部の文字列を取得するにはSUBSTR関数やLEFT関数、RIGHT関数を使用することで可能となります。DBMS毎に利用できる関数に違いがありOracleではLEFT関数、RIGHT関数は使用出来ません。
関数\DBMS MySQL PostgreSQL SQL Server Oracle
SUBSTR or SUBSTRING ○ ○ ○ ○
LEFT ○ ○ ○ ✕
RIGHT ○ ○ ○ ✕
サンプルテーブル
SUBSTR関数の使用例
- クエリー(SQL)例
SUBSTR関数は「SUBSTR(文字列, 開始位置, (文字数))」で指定します。第三引数を省略すると第二引数へ指定した文字以降全て取得します。
SUBSTRはSUBSTRINGでも同様の動作となります。12345SELECTSUBSTR(name,2), -- 先頭から見て2文字目以降を取得SUBSTR(name,2,1), -- 先頭から見て2文字目~1文字を取得SUBSTR(name,2,3) -- 先頭から見て2文字目~3文字を取得FROM goods WHERE name = 'ABCDE'; - 実行結果
LEFT関数の使用例
- クエリー(SQL)例
LEFT関数は「LEFT(文字列, 文字数)」で指定します。123SELECTLEFT(name,2) -- 左から2文字を取得FROM goods WHERE name = 'ABCDE'; - 実行結果
RIGHT関数の使用例
- クエリー(SQL)例
LEFT関数は「RIGHT(文字列, 文字数)」で指定します。123SELECTRIGHT(name,2) -- 右から2文字を取得FROM goods WHERE name = 'ABCDE'; - 実行結果