データベース千夜一夜第22回

SQLと関数~文字列関数と日付関数 長谷川裕行
有限会社 手國堂

集計関数の他にも、SELECT命令のフィールドやWHERE句の条件式で様々な関数を使えます。関数をうまく使うと、処理結果をユーザーに対して見やすく整形できるなど、データベース処理の柔軟性が増します。

関数はアプリケーションから発行するSQL文の他、データベース側に保存するストアドプロシージャでも使えます。ストアドプロシージャについてはまだ説明していないので、ここでは一般的なSQL文で使える主な関数とその使用例を紹介しておきます。

関数は機能・目的別に「文字列関数、日付関数、数学関数、システム関数」などに分類できます。まずは、文字列型のデータを扱う文字列関数と日付/時刻型のデータを扱う日付関数を取り上げましょう。


サンプル・データベースとサンプル・アプリケーションの扱いについて
第9回以降、新しいサンプル・データベースを使っているのでご注意ください。新しいサンプル・データベースの登録方法については、第9回の記事から「新しいサンプルデータベースの準備」の項をお読みください。



- 目次 -
関数の互換性
文字列関数
文字数を取得~LEN
文字の切り出し~LEFT/RIGHT
空白の削除~LTRIM/RTRIM
大文字/小文字変換~LOWER/UPPER
空白の生成~SPACE
文字の置き換え~REPLACE
桁揃え~STR
文字列の検索~CHARINDEX
文字列の置き換え~STUFF
文字列の繰り返し~REPLICATE
文字列の並べ替え~REVERSE
日付関数
現在の日時を取得~GETDATE
日時の差(期間)を計算~DATEDIFF
日時を加算~DATEADD
特定要素の取り出し~DATEPART
特定要素の取り出し~DAY、MONTH、YEAR
+演算子による文字列と日時の加算
あとがき
長谷川 裕行 (はせがわ ひろゆき)
有限会社 手國堂 代表取締役  http://www.hirop.com/

大阪芸術大学 写真学科講師。フリーライター。日経ソフトウェアなどに連載。
『ソフトウェアの20世紀』、『独習SQL』など著書多数。

Copyright © MESCIUS inc. All rights reserved.