スケーラブルデータベースサーバ HiRDB Version 8 SQLリファレンス
データ型の変数,データの部分抽出,値の変換などをSQLの問合せ式中の選択式,又は探索条件で指定します。
スカラ関数には,次の3種類があります。
スカラ関数の一覧を次の表に示します。
| 分 類 | スカラ関数 | 機 能 | スカラ関数の種別 |
|---|---|---|---|
| 変換関数 | INTEGER | 数データを整数データに変換します。 | 組込み |
| DECIMAL | 数データを10進数データに変換します。 | 組込み | |
| FLOAT | 数データを浮動小数点データに変換します。 | 組込み | |
| DIGITS | 整数,10進数,日間隔データ,又は時間隔データの数字の部分を抽出して,文字列表現に変換します。 | 組込み | |
| NUMEDIT | 数値を編集して,文字列表現に変換します。 | 定義 | |
| STRTONUM | 数値の文字列表現を,数データ型に変換します。 | 定義 | |
| CHARACTER | 日付データ,時刻データ,又は時刻印データを,文字列表現に変換します。 | 組込み | |
| VARCHAR_FORMAT | 日付データ,時刻データ,及び時刻印データを,指定した書式の文字列表現に変換します。 | 組込み | |
| DATE | 指定した書式の日付の文字列表現を,日付データに変換します。 西暦1年1月1日からの通算日数をそれが示す日付データに変換します。 |
組込み | |
| DAYS | 日付データ,又は時刻印データを西暦1年1月1日からの通算日数に変換します。 | 組込み | |
| TIME | 指定した書式の時刻の文字表現を,時刻データに変換します。 | 組込み | |
| TIMESTAMP | 時刻印の既定の文字列表現を,時刻印データに変換します。西暦1年1月1日からの通算日数を,それが示す時刻印データに変換します。日付データと時刻データから,それらを組み合わせた時刻印データに変換します。 | 組込み | |
| TIMESTAMP_FORMAT | 指定した書式に従った時刻印の文字列表現を,時刻印データに変換します。 | 組込み | |
| MIDNIGHTSECONDS | 深夜0時から,指定した時刻までの秒数を求めます。 | 定義 | |
| HEX | 値式を16進文字列表現に変換します。 | 組込み | |
| ASCII | 文字をアスキーコードに変換します。 | 定義 | |
| CHR | アスキーコードを文字に変換します。 | 定義 | |
| RADIANS | 角度を,度数からラジアンに変換します。 | 定義 | |
| DEGREES | 角度を,ラジアンから度数に変換します。 | 定義 | |
| CAST指定 | 値式のデータを,指定したデータ型に変換します。 CAST指定については,「2.25 CAST指定」を参照してください。 |
該当しません | |
| 抽出関数 | YEAR | 日付データ,時刻印データ,又は日間隔データから年の部分を抽出します。 | 組込み |
| MONTH | 日付データ,時刻印データ,又は日間隔データから月の部分を抽出します。 | 組込み | |
| DAY | 日付データ,時刻印データ,又は日間隔データから日の部分を抽出します。 | 組込み | |
| HOUR | 時刻データ,時刻印データ,又は時間隔データから時間の部分を抽出します。 | 組込み | |
| MINUTE | 時刻データ,時刻印データ,又は時間隔データから分の部分を抽出します。 | 組込み | |
| SECOND | 時刻データ,時刻印データ,又は時間隔データから秒の部分を抽出します。 | 組込み | |
| 数学関数 | ABS | 値式の絶対値を返します。 | 組込み |
| MOD | 剰余を返します。 | 組込み | |
| CEIL | その数値以上の最小の整数を求めます。 | 定義 | |
| FLOOR | その数値以下の最大の整数を求めます。 | 定義 | |
| TRUNC | 数値の,指定したけた未満を切り捨てます。 | 定義 | |
| ROUND | 切り上げと切り捨ての境界値を指定して,指定したけたに数値を丸めます。又は,四捨五入します。 | 定義 | |
| SIGN | 数値の符号を1(正),0,−1(負)で求めます。 | 定義 | |
| SQRT | 数値の平方根を求めます。 | 定義 | |
| POWER | 数値の累乗を求めます。 | 定義 | |
| EXP | 自然対数の底の累乗を求めます。 | 定義 | |
| LN | 自然対数を求めます。 | 定義 | |
| LOG10 | 常用対数を求めます。 | 定義 | |
| SIN | ラジアンで指定した角度の正弦(三角関数)を求めます。 | 定義 | |
| COS | ラジアンで指定した角度の余弦(三角関数)を求めます。 | 定義 | |
| TAN | ラジアンで指定した角度の正接(三角関数)を求めます。 | 定義 | |
| ASIN | 指定した数値の逆正弦(三角関数)をラジアンで求めます。 | 定義 | |
| ACOS | 指定した数値の逆余弦(三角関数)をラジアンで求めます。 | 定義 | |
| ATAN | 指定した数値の逆正接(三角関数)をラジアンで求めます。 | 定義 | |
| ATAN2 | 点(x,y)の逆正接(三角関数)をラジアンで求めます。 | 定義 | |
| SINH | 双曲線正弦を求めます。 | 定義 | |
| COSH | 双曲線余弦を求めます。 | 定義 | |
| TANH | 双曲線正接を求めます。 | 定義 | |
| PI | 円周率πを求めます。 | 定義 | |
| 文字列操作関数 | SUBSTR | データ列(文字列又はバイナリ列)中の指定した位置から,指定した文字数又は長さの部分データ列を求めます。 | 組込み |
| LEFTSTR | 文字列中の先頭から,指定した文字数の部分文字列を求めます。 | 定義 | |
| RIGHTSTR | 文字列中の最後から,指定した文字数の部分文字列を求めます。 | 定義 | |
| UPPER | 文字列データ中の英小文字を英大文字に変換します。 | 組込み | |
| LOWER | 文字列データ中の英大文字を英小文字に変換します。 | 組込み | |
| TRANSL (TRANSL_LONG) |
文字列中の指定した文字を,対応するほかの文字に文字変換します。 | 定義 | |
| LTRIM | 左から,空白又は指定した文字を繰り返し削除します。 | 定義 | |
| RTRIM | 右から,空白又は指定した文字を繰り返し削除します。 | 定義 | |
| LTRIMSTR | 左から,指定した文字列を繰り返し削除します。 | 定義 | |
| RTRIMSTR | 右から,指定した文字列を繰り返し削除します。 | 定義 | |
| REPLACE (REPLACE_LONG) |
文字列中の部分文字列を,ほかの文字列に繰り返し置き換えます。 | 定義 | |
| INSERTSTR (INSERTSTR_LONG) |
指定した位置から,指定した文字数の部分文字列を文字列中から削除して,その位置に別の文字列を挿入します。 | 定義 | |
| POSSTR | 文字列中に,指定した位置以降にn回数目に出現する,指定した部分文字列の文字位置を求めます。 | 定義 | |
| REVERSESTR | 左右を反転した文字列を求めます。 | 定義 | |
| POSITION | データ列(文字列又はバイナリ列)中に,指定した位置以降に最初に出現する,指定した部分データ列の位置を求めます。 | 組込み | |
| 日付操作関数 | NEXT_DAY | 指定した日付の次の,指定した曜日の日付を求めます。 | 定義 |
| LAST_DAY | 指定した日付の,年月の最終日を求めます。 | 定義 | |
| DAYOFWEEK | 指定した日付の曜日が,その週の何日目かを求めます。 | 定義 | |
| DAYOFYEAR | 指定した日付が,その年の何日目かを求めます。 | 定義 | |
| DAYNAME | 指定した日付の曜日を,英語で求めます。 | 定義 | |
| WEEK | 指定した日付が,その年の第何週目かを求めます。 | 定義 | |
| WEEKOFMONTH | 指定した日付が,その月の第何週目かを求めます。 | 定義 | |
| MONTHNAME | 指定した日付の月の,英語名を求めます。 | 定義 | |
| ROUNDMONTH | 切り上げの最小の日を指定し,日付の日を端数として,年月に丸めた日付を求めます。 | 定義 | |
| TRUNCYEAR | 年度の最初の月日を指定して,その年度の最初の日付を求めます。 | 定義 | |
| QUARTER | 年度の最初の月日を指定して,それが第何四半期かを求めます。 | 定義 | |
| HALF | 年度の最初の月日を指定して,それが上期か下期かを求めます。 | 定義 | |
| CENTURY | 指定した日付の世紀を求めます。 | 定義 | |
| MONTHS_BETWEEN | 日付間の月数を,実数で求めます。 | 定義 | |
| YEARS_BETWEEN | 日付間の年数を,実数で求めます。 | 定義 | |
| 日時操作関数 | DATE_TIME | 日付データと時刻データとを連結して,時刻印の既定の文字列表現に変換します。 | 定義 |
| INTERVAL_DATETIMES | 既定の文字列表現の時刻印間の,日時間隔を求めます。 | 定義 | |
| ADD_INTERVAL | 既定の文字列表現の時刻印に,日時間隔を加算します。 | 定義 | |
| 検査関数 | ISDIGITS | 文字列中のすべての文字が,数字かどうかを検査します。 | 定義 |
| IS_DBLBYTES | 文字列中のすべての文字が,全角文字かどうかを検査します。 | 定義 | |
| IS_SNGLBYTES | 文字列中のすべての文字が,半角文字かどうかを検査します。 | 定義 | |
| XML型値操作関数 | XMLQUERY | XQueryを評価し,評価結果のXML型の値を生成します。 | プラグイン |
| XMLSERIALIZE | XML型の値からVARCHAR型又はBINARY型の値を生成します。 | プラグイン | |
| XMLPARSE | XML文書からXML型の値を生成します。 | プラグイン | |
| そのほかの関数 | LENGTH | 値式のデータの長さを求めます。 | 組込み |
| VALUE | 値式の並びの中からナル値でない最初の値式を抽出します。 | 組込み | |
| GREATEST | 引数中の最大値を求めます。 | 定義 | |
| LEAST | 引数中の最小値を求めます。 | 定義 | |
| IS_USER_CONTAINED_IN_HDS_GROUP | ユーザがディレクトリサーバのロールに属しているかどうかの判定結果を返します。 IS_USER_CONTAINED_IN_HDS_GROUPは,ディレクトリサーバ連携機能を使用しているときだけ有効となります。 |
組込み | |
| BIT_AND_TEST | 指定した引数同士のビットごとの論理積を求め,結果を真偽で返します。 | 組込み | |
| CASE式 | 条件付けられた値を指定します。 CASE式については,「2.17 CASE式」を参照してください。 |
該当しません |
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.