付録I エスケープ句で指定できるスカラ関数
エスケープ句で指定できるスカラ関数を次の表に示します。
スカラ関数 |
スカラ関数の標準形式 |
形式変換※1 |
||
---|---|---|---|---|
Type2 |
Type4 |
Type4(XDM/RD E2接続) |
||
数学関数 |
ABS(number) |
無 |
無 |
無 |
ACOS(float) |
無 |
MASTER.ACOS(float) |
無 |
|
ASIN(float) |
無 |
MASTER.ASIN(float) |
無 |
|
ATAN(float) |
無 |
MASTER.ATAN(float) |
無 |
|
ATAN2(float1, float2) |
無 |
MASTER.ATAN2(float1, float2) |
無 |
|
CEILING(number)※2 |
CEIL(number) 08-02 |
MASTER.CEIL(number) |
無 |
|
COS(float) |
無 |
MASTER.COS(float) |
無 |
|
COT(float)※3,※4 |
無 |
無 |
無 |
|
DEGREES(number) |
無 |
MASTER.DEGREES(number) |
無 |
|
EXP(float) |
無 |
MASTER.EXP(float) |
無 |
|
FLOOR(number) |
無 |
MASTER.FLOOR(number) |
無 |
|
LOG(float)※2 |
LN(float) 08-02 |
MASTER.LN(float) |
LN(float) |
|
LOG10(float) |
無 |
MASTER.LOG10(float) |
無 |
|
MOD(integer1, integer2) |
無 |
無 |
無 |
|
PI() |
無 |
MASTER.PI() |
無 |
|
POWER(number, power) |
無 |
MASTER.POWER(number, power) |
無 |
|
RADIANS(number) |
無 |
MASTER.RADIANS(number) |
無 |
|
RAND(integer)※3,※4 |
無 |
無 |
無 |
|
ROUND(number, places) |
無 |
MASTER.ROUND(number, places) |
無 |
|
SIGN(number) |
無 |
MASTER.SIGN(number) |
無 |
|
SIN(float) |
無 |
MASTER.SIN(float) |
無 |
|
SQRT(float) |
無 |
MASTER.SQRT(float) |
無 |
|
TAN(float) |
無 |
MASTER.TAN(float) |
無 |
|
TRUNCATE(number, places)※2 |
TRUNC(number, places) 08-02 |
MASTER.TRUNC(number, places) |
無 |
|
文字列関数 |
ASCII(string) |
無 |
MASTER.ASCII(string) |
無 |
BIT_LENGTH(string)※3 |
無 |
無 |
無 |
|
CHAR(code)※2 |
CHR(code) 08-02 |
MASTER.CHR(code) |
無 |
|
CHAR〔ACTER〕_LENGTH(string)※3 |
無 |
無 |
無 |
|
CONCAT(string1, string2)※3 |
無 |
無 |
無 |
|
DIFFERENCE(string1, string2)※3 |
無 |
無 |
無 |
|
INSERT(string1, start, length, string2)※2 |
INSERTSTR(string1, start, length, string2) 08-02 |
MASTER.INSERTSTR(string1, start, length, string2) |
無 |
|
LCASE(string)※2 |
LOWER(string) 08-02 |
同左 |
同左 |
|
LEFT(string, count)※2 |
LEFTSTR(string, count) 08-02 |
MASTER.LEFTSTR(string, count) |
無 |
|
LENGTH(string) |
無 |
無 |
無 |
|
LOCATE(string1, string2〔, start〕)※2 |
POSITION(string1 IN string2 〔FROM start〕) 08-02 |
同左 |
同左 |
|
LTRIM(string) |
無 |
MASTER.LTRIM(string) |
TRIM(LEADING FROM string) |
|
OCTET_LENGTH(string)※3 |
無 |
無 |
無 |
|
POSITION(character IN character) |
無 |
無 |
無 |
|
REPEAT(string, count)※3 |
無 |
無 |
無 |
|
REPLACE(string1, string2, string3) |
無 |
MASTER.REPLACE(string1, string2, string3) |
無 |
|
RIGHT(string, count)※2 |
RIGHTSTR(string, count) 08-02 |
MASTER.RIGHTSTR(string, count) |
無 |
|
RTRIM(string) |
無 |
MASTER.RTRIM(string) |
TRIM(TRAILING FROM string) |
|
SOUNDEX(string)※3 |
無 |
無 |
無 |
|
SPACE(count)※3 |
無 |
無 |
無 |
|
SUBSTRING(string, start, length)※2 |
SUBSTR(string, start, length) |
同左 |
同左 |
|
UCASE(string)※2 |
UPPER(string) |
同左 |
同左 |
|
時刻と日付の関数 |
CURDATE()※2 |
CURRENT DATE |
同左 |
同左 |
CURRENT_DATE()※2 |
CURRENT DATE |
同左 |
同左 |
|
CURTIME()※2 |
CURRENT TIME |
同左 |
同左 |
|
CURRENT_TIME |
無 |
無 |
無 |
|
CURRENT_TIME(time-precision)※2,※5 引数time-precisionは,戻り値の小数秒の精度を指定する。 |
CURRENT TIME 08-02 |
同左 |
無 |
|
CURRENT_TIMESTAMP[(timestamp-precision)] 引数timestamp-precisionは,返されるタイムスタンプの小数秒の精度を指定する。 |
無 |
無 |
無 |
|
DAYNAME(date) |
無 |
MASTER.DAYNAME(date) |
無 |
|
DAYOFMONTH(date)※3 |
無 |
無 |
無 |
|
DAYOFWEEK(date) |
無 |
MASTER.DAYOFWEEK(date) |
無 |
|
DAYOFYEAR(date) |
無 |
MASTER.DAYOFYEAR(date) |
無 |
|
EXTRACT(extract-field FROM extract-source)※3 |
無 |
無 |
無 |
|
HOUR(time) |
無 |
無 |
無 |
|
MINUTE(time) |
無 |
無 |
無 |
|
MONTH(time) |
無 |
無 |
無 |
|
MONTHNAME(date) |
無 |
MASTER.MONTHNAME(date) |
無 |
|
NOW()※2 |
CURRENT TIMESTAMP(6) 08-02 |
同左 |
同左 |
|
QUARTER(date) |
無 |
MASTER.QUARTER(date) |
無 |
|
SECOND(time) |
無 |
無 |
無 |
|
TIMESTAMPADD(interval, count, timestamp)※3 |
無 |
無 |
無 |
|
TIMESTAMPDIFF(interval, timestamp1, timestamp2)※3 |
無 |
無 |
無 |
|
WEEK(date) |
無 |
MASTER.WEEK(date) |
無 |
|
YEAR(date) |
無 |
無 |
無 |
|
システム関数 |
DATABASE()※3 |
無 |
無 |
無 |
IFNULL(expression, value)※3 |
無 |
無 |
無 |
|
USER()※4 |
USER 08-02 |
同左 |
同左 |
|
データ型変換関数 |
CONVERT(value, SQLtype)※2,※4 |
無 |
無 |
無 |
- 注※1
-
Statementオブジェクトのエスケープ構文解析での,スカラ関数変換後の形式を示します。関数変換しない場合は,「無」と示します。また,xx-xxは追加したバージョンを示します。
- 注※2
-
標準形式とHiRDB形式,又はXDM/RD E2形式が異なります。
- 注※3
-
HiRDB,又はXDM/RD E2では該当するスカラ関数がありません。
- 注※4
-
HiRDB,又はXDM/RD E2で未サポートの関数のため,スカラ関数(標準形式)をエスケープ構文に指定するとHiRDBサーバ,又はXDM/RD E2でエラーになります。また,xx-xxはType2 JDBCドライバに追加したバージョンを示します。
- 注※5
-
Type4 JDBCドライバでは,CURRENT TIMEに変換するため,小数秒の精度=0として扱います。引数で指定された秒の精度は無効になります。