スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド

[目次][索引][前へ][次へ]

付録I エスケープ句で指定できるスカラ関数

エスケープ句で指定できるスカラ関数を次の表に示します。

表I-1 エスケープ句で指定できるスカラ関数

スカラ関数 スカラ関数の標準形式 形式変換※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として扱います。引数で指定された秒の精度は無効になります。