日付関数
4.2 日付関数
ここでは、日付を処理するための関数をいくつか取り上げます。
4.2.1 CURDATE関数
現在の日付を取得する関数です。
この関数は、引数をとりません。下記のように記述すると、現在の日付を取得できます。
※今日が2010年9月13日の場合です。
TIPS
MySQLのSELECT文では、参照するテーブルがなく、単にデータを表示したいような場合は「FROM」句を省略できます。
例えば、単に「A」という文字列を表示したい場合は、
と記述できます。
![]()
4.2.2 YEAR関数、MONTH関数、DAY関数
それぞれ日付から年、月、日を取得する関数です。
書式は下記のようになります。
「orderinfo」の注文日からそれぞれ年、月、日を取得してみましょう。
まず年です。
次は月を取得してみましょう。
最期に日を取得してみましょう。
4.2.3 DAYNAME関数
引数で与えられた日付の曜日を取得する関数です。
書式は下記のようになります。
「orderinfo」テーブルの注文日付の曜日を取得する場合は、
のようになります。
TIPS
その他の関数には、下記のようなものがあります。
カテゴリ 関数名 機能 数値関数 ABS 絶対値を求める MOD 剰余を求める FLOOR 小数点以下を切り下げる CEILING 小数点以下を切り上げる CEIL 小数点以下を切り上げる ROUND 小数点以下を四捨五入する POW 累乗(べき乗)を求める POWER 累乗(べき乗)を求める SIGN 符号を調べる RAND 乱数を生成する LEAST 最小値を調べる GREATEST 最大値を調べる TRUNCATE 小数点第N位で切り捨てる 文字列関数 FORMAT 数値を整形する ASCII 1文字目のアスキーコードを調べる ORD 1文字目の文字コードを調べる CHAR 文字コードを文字に変換する CONCAT_WS 文字列を結合する(区切文字を間に挟む) LENGTH 文字列のバイト数を調べる BIT_LENGTH 文字列のビット数を調べる LOCATE 特定の文字列が最初に出現する位置を調べる POSITION 特定の文字列が最初に出現する位置を調べる INSTR 特定の文字列が最初に出現する位置を調べる LPAD 特定の文字を左側に追加して文字列の長さを整える RPAD 特定の文字を右端に追加して文字列の長さを整える LEFT 文字列の左側から文字列を取り出す RIGHT 文字列の右側から文字列を取り出す MID 文字列から位置を指定して文字列を取り出す SUBSTRING_INDEX 区切り文字列N個目までの文字列を取り出す CONV X進数をY進数へ変換する LTRIM 文字列の左側から半角スペースを削除する RTRIM 文字列の右側から半角スペースを削除する TRIM 文字列の両側から特定の文字列を削除する SPACE 任意の数の半角スペースを生成する LOWER アルファベット大文字を小文字に変換する UPPER アルファベット小文字を大文字に変換する 変換関数 CAST 型を変換する BIN 10進数の整数を2進数に変換する OCT 10進数の整数を8進数に変換する HEX 10進数の整数を16進数に変換する 日付・時刻関数 DATE 日時から日付を取り出す DAYOFWEEK 日付の曜日を調べる DAYOFMONTH 年月日から日を取り出す DAYOFYEAR 日付がその年の1月1日から何日目かを調べる MONTHNAME 日付の月の英語名称を調べる HOUR 時刻から時を取り出す MINUTE 時刻から分を取り出す SECOND 時刻から秒を取り出す システム関数 DATABASE 接続中のデータベースを確認する USER 接続時に指定されたユーザー名を確認する VERSION MySQLサーバのバージョンを確認する ※MySQLにはこれ以外にも関数が用意されています。それぞれの関数の使い方については、MySQLのマニュアルを参照してください。 また、他のRDBMSでも、これ以外の関数が存在したり、同じ機能をもつものでも、関数名や書式が違う場合があります。 詳しくは、それぞれのマニュアルを参照してください。