4.1 文字列関数

ここでは、文字列を処理するための関数をいくつか取り上げます。

4.1.1 CHAR_LENGTH関数

文字列の長さを取得する関数です。書式は下記のようになります。

    SELECT CHAR_LENGTH(列名) FROM テーブル名;

「bookinfo」テーブルの書籍タイトルの文字列の長さを取得したい場合、下記のようになります。

    SELECT CHAR_LENGTH(title) FROM bookinfo;

最後の行は値がないので、表示上は「NULL」となります。

4.1.2 CONCAT関数

文字列を連結する関数です。書式は下記のようになります。

    SELECT CONCAT(文字列A,文字列B) FROM テーブル名;

「bookinfo」テーブルの書籍タイトルに、「書籍名は、」と付け加えたい場合は下記のようになります。

    SELECT CONCAT('書籍名は、',title) FROM bookinfo;

最後の行は値がないので、文字列連結の対象外になります

3つ以上の文字列を連結することも出来ます。「bookinfo」テーブルの書籍タイトルに、「書籍名は、」と「です。」付け加えたい場合は下記のようになります。

    SELECT CONCAT('書籍名は、',title,'です。') FROM bookinfo;

またテーブルの列を連結することも出来ます。「bookinfo」でISBN番号と書籍名を連結する場合は、

    SELECT CONCAT(isbn,title) FROM bookinfo;

のようになります。

4.1.3 SUBSTRING関数

部分文字列を取り出す関数です。書式は下記のようになります。

    SELECT SUBSTRING(文字列,取り出し開始位置,取り出す文字列数) FROM テーブル名;

「bookinfo」テーブルの書籍タイトルの1文字目から3文字取り出したい場合は、

    SELECT SUBSTRING(title,1,3) FROM bookinfo;

第3引数を省略すると、取り出し開始位置から、最後まで取り出します。

    SELECT SUBSTRING(title,4) FROM bookinfo;

上記の指定は、書籍タイトルの4文字目から最後までを取り出しています。

最後の行は値がないので、文字列抽出の対象外になります。