最初のページに戻ります。

総合の目次があるページに戻ります。

よく使うマニュアルです

Wiki

updated on 2004.06.23

OPNQRYFの組込み関数一覧

[ Previous ] [ HOME ] [ Upper ]


AS/400 CL(制御言語)解説書 バージョン3

1.6.107 OPNQRYF (QUERYファイル・オープン)コマンドより

※全関数ですが、解説文は、抜粋ですので、各関数の詳しい説明は、マニュアルをご覧下さい。

参考マニュアル

AS/400 CL(制御言語)解説書 バージョン3 及び DB2 OS/400 用データベース・プログラミングバージョン 3


組込み関数

以下に挙げる組込み関数は、導き出されるフィールドをMAPFLDパラメーターで定義するため、あるいはQRYSLTパラメーターまたはGRPSLTパラメーターに指定する複合選択オペランドを定義するための式で、使用できます。

数値引数は数値フィールド、数値定数、または数値式です。ストリング引数は文字フィールド、文字ストリング、リテラル、またはストリング式です。特に断らない限り、どの組込み関数でも、式(他の組込み関数も含む)を引数として使用できます。

FORMATパラメーターによって定義されるレコード様式の中にあり、同時にMAPFLDパラメーターで式によって定義されているフィールドの場合は、以下に説明する属性を使って式の結果が計算されます。そして、その結果の値がフィールドの属性に合わせてマッピングされます。

%ABSVAL(数値引数) %ABSVALは数値引数を受け入れ、引数の絶対値を返します。返される値の属性は引数と同じになりますが、引数が*BIN2である場合に限り返される値は*BIN4となります。
%ACOS(数値引数) %ACOSは数値引数を受け入れ、引数の逆余弦を表す弧度を返します。%ACOSと%COSとは逆の演算です。
%AND(ストリング引数 ...) %ANDは、2個以上の文字ストリング引数または 16進数ストリング引数を受け入れ、引数のビット単位の'AND'(論理積)であるストリングを返します。この関数は最初の引数ストリングと次のストリングとをANDで結び、後続の引数を次々にANDで前の結果と結んでゆきます。前の結果より短い引数が出てきた場合は、その引数の右側にブランクが充てんされます。返される値は、最も長い引数と同じ長さをもつ*HEXタイプのストリングです。引数のいずれかが可変長である場合は、最大長が引数の長さとして使用されます。
%ANTILOG(数値引数) %ANTILOGは数値引数を受け入れ、引数の真数(底10)を返します。%ANTILOGと%LOGとは逆の演算です。
%ASIN(数値引数) ASINは数値引数を受け入れ、引数の逆正弦を表す弧度を返します。%ASINと%SINとは逆の演算です。
%ATAN(数値引数) %ATANは数値引数を受け入れ、引数の逆正接を表す弧度を返します。%ATANと%TANとは逆の演算です。
%ATANH(数値引数) %ATANHは数値引数を受け入れ、引数の双曲逆正接を表す弧度を返します。%ATANHと%TANHとは逆の演算です。
%AVG(数値引数) %AVGは数値引数を受け入れ、GRPFLDパラメーターで定義されるレコードのグループについて引数の平均値を返します。引数はフィールド名または式でなければなりません(リテラルは使用できません)。
%CHAR(日付/時刻引数 日付/時刻形式) %CHARは日付/時刻引数および日付/時刻形式を受け入れ、指定した形式を使って引数の文字表現を返します。日付/時刻引数として使用できるのは、日付フィールド、時刻フィールド、または時刻スタンプ・フィールドです。返される値は*CHARタイプで、現行ジョブのCCSIDによりタグ付けされます。
%COS(数値引数) %COSは数値引数を受け入れ、引数の余弦を返します。引数は弧度で指定しなければなりません。%COSと%ACOSとは逆の演算です。
%COSH(数値引数) %COSHは数値引数を受け入れ、引数の双曲余弦を返します。引数は弧度で指定しなければなりません。
%COT(数値引数) %COTは数値引数を受け入れ、引数の余接を返します。引数は弧度で指定しなければなりません。
%COUNT %COUNTでは引数は使用できません。この関数は、GRPFLD パラメーターで定義されるレコードのグループに含まれているレコードの数を返します。返される値は、総桁数が10桁で小数桁数がない4バイトの2進数(*BIN4)です。%COUNTは、グループ化機能を使用するQUERYのみに適用される集計機能です。
%CURDATE %CURDATEでは引数は使用できません。この関数は時刻機構の読取りによって現在の日付を求めます。返される値のタイプは*DATEです。形式および区切り記号はジョブ属性から導き出されます。
%CURTIME %CURTIMEでは引数は使用できません。この関数は時刻機構の読取りによって現在の時刻を求めます。返される値のタイプは*TIMEです。形式および区切り記号はジョブ属性から導き出されます。
%CURTIMESTP %CURTIMESTPでは引数は使用できません。この関数は時刻機構の読取りによって現在の時刻スタンプを求めます。返される値のタイプは*TIMESTPです。形式および区切り記号はジョブ属性から導き出されます。
%CURTIMEZONE %CURTIMEZONEでは引数は使用できません。この関数は現在の標準時間帯を求めます。戻り値は、桁数が6桁で小数部が0のパック10進数(*DEC)です。
%DATE(日付/時刻引数) %DATEは日付/時刻引数を受け入れ日付を返します。日付/時刻引数は、日付フィールドまたは時刻スタンプ・フィールド、日付の外部形式を含む文字または16進フィールド、日付リテラル、もしくは1 - 3、652、059の範囲の数値フィールドまたはリテラル値になります。返される値のタイプは*DATEです。
%DAY(日付/時刻引数) %DAYは日付/時刻引数を受け入れ、引数値の日の部分を返します。日付/時刻引数は、日付または時刻スタンプ・フィールド、日付期間または時刻スタンプ期間(フィールドあるいはリテラル)、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。
%DAYS(日付/時刻引数) %DAYSは日付/時刻引数を受け入れ、日付の整数表現を返します。日付/時刻引数として使用できるのは、日付フィールドまたは時刻スタンプ・フィールド、日付の外部形式を含む文字フィールドまたは16進数フィールド、もしくは日付リテラルです。返される値のタイプは*BIN4です。
%DIGITS (数値引数) %DIGITSは数値引数を受け入れ、その数値の文字表現(符号または小数点を含まない)を返します。結果の値は現行ジョブのCCSIDによってタグ付けされます。たとえば、%DIGITS(-1.5)は15という文字ストリングを返します。数値引数は浮動小数点数であってはなりません。
%DURDAY(整数引数) %DURDAYは整数引数を受け入れ、ラベル付きの日数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%DURHOUR(整数引数) %DURHOURは整数引数を受け入れ、ラベル付きの時間数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%DURMICSEC(整数引数) %DURMICSECは整数引数を受け入れ、ラベル付きのマイクロ秒数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%DURMINUTE(整数引数) %DURMINUTEは整数引数を受け入れ、ラベル付きの分数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%DURMONTH(整数引数) %DURMONTHは整数引数を受け入れ、ラベル付きの月数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%DURSEC(整数引数) %DURSECは整数引数を受け入れ、ラベル付きの秒数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%DURYEAR(整数引数) %DURYEARは整数引数を受け入れ、ラベル付きの年数期間を返します。この関数の整数引数には、数式、フィールド、またはリテラルが使用できます。
%EXP(数値引数) %EXPは数値引数を受け入れ、自然対数の底(e)を引数に指定するべきの値だけ累乗して得た値を返します。%EXPと%LNとは逆の演算です。
%HEX(16進引数) %HEXは引数を受け入れ、その引数の値と等価の16進数値を返します。16進引数はどのタイプのものでもかまいません。返される値は*CHARタイプで、現行ジョブのCCSIDによりタグ付けされます。
%HOUR(日付/時刻引数) %HOURは日付/時刻引数を受け入れ、引数値の時の部分を返します。日付/時刻引数は、時刻フィールドまたは時刻スタンプ・フィールド、時刻期間または時刻スタンプ期間(フィールドあるいはリテラルのいずれか)、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。
%LEN(長さ引数) %LENはある引数を受け入れると、その値を表すのに使用されるバイト数を戻します。ただし、その値がグラフィック・フィールド・タイプである場合を除きます。値がグラフィック・フィールド・タイプである場合、グラフィック文字の数が戻されます。長さ引数はどのタイプのものでもかまいません。返される値のタイプは*BIN4です。
%LN(数値引数) %LNは数値引数を受け入れ、その引数の自然対数を返します。%LNと%EXPとは逆の演算です。
%LOG(数値引数) %LOGは数値引数を受け入れ、引数の常用対数(底10)を返します。%LOGと%ANTILOGとは逆の演算です。
%MAX(数値またはストリングまたは日付/時刻引数 ...) %MAXは1つまたは複数の文字ストリング、DBCSストリング、数値、または日付/時刻引数を受け入れ、リストから最大値を戻します。日付/時刻引数はタイプが*DATE、*TIME、または*TIMESTPである引数か、もしくは、日付期間、時刻期間、または時刻スタンプ期間である引数です。ストリング引数は256バイト以下でなければなりません。
%MICSEC(日付/時刻引数) %MICSECは日付/時刻引数を受け入れ、値のマイクロ秒の部分を返します。日付/時刻引数は、時刻スタンプ(フィールドまたはリテラル)、時刻スタンプ期間(フィールドまたはリテラル)、時刻スタンプの外部形式を含む文字フィールド、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。
%MIN(数値またはストリングまたは日付/時刻引数 ...) %MINは1つまたは複数の文字ストリング、DBCSストリング、数値、あるいは日付/時刻の引数を受け入れ、リストから最小値を戻します。日付/時刻引数はタイプが*DATE、*TIME、または*TIMESTPである引数か、もしくは、日付期間、時刻期間、または時刻スタンプ期間である引数です。ストリング引数は256バイト以下でなければなりません。
%MINUTE(日付/時刻引数) %MINUTEは日付/時刻引数を受け入れ、引数値の分の部分を返します。日付/時刻引数は、時刻フィールドまたは時刻スタンプ・フィールド、時刻期間または時刻スタンプ期間(フィールドあるいはリテラルのいずれか)、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。
%MONTH(日付/時刻引数) %MONTHは日付/時刻引数を受け入れ、引数値の月の部分を返します。日付/時刻引数は、日付または時刻スタンプ・フィールド、日付期間または時刻スタンプ期間(フィールドあるいはリテラル)、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。
%NONNULL(引数 ...) %NONNULLは複数の引数のリストを受け入れ、そのリスト内の最初の空白でない値を返します。引数リスト内の項目は、すべてのタイプのフィールドまたはリテラル値とすることができます。戻される値のタイプは、リストから選択された項目のタイプです。
%NOT(ストリング引数) %NOTは文字ストリング引数または16進ストリング引数を受け入れ、引数のビット単位の'NOT'(論理否定)であるストリングを返します。返される値は引数と同じ長さの*HEXタイプのストリングです。
%OR(ストリング引数 ...) %ORは複数の文字ストリング引数を受け入れ、引数のビットに関するOR(論理包含OR)であるストリングを戻します。この関数は、最初の引数とその次の引数とをORで結び、さらに、後続の引数とその前の結果とを次々にORで結んでゆきます。前の結果より短い引数が見つかった場合は、その引数にブランクが埋め込まれます。最終結果は最長の引数と同じ長さのストリングです。引数のいずれかが可変長である場合は、最大長が引数の長さとして使用されます。
%SECOND(日付/時刻引数) %SECONDは日付/時刻引数を受け入れ、引数値の秒の部分を返します。日付/時刻引数は、時刻フィールドまたは時刻スタンプ・フィールド、時刻期間または時刻スタンプ期間(フィールドあるいはリテラルのいずれか)、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。
%SIN(数値引数) %SINは数値引数を受け入れ、引数の正弦を返します。引数は弧度で指定しなければなりません。%SINと%ASINとは逆の演算です。
%SINH(数値引数) %SINHは数値引数を受け入れ、引数の双曲正弦を返します。引数は弧度で指定しなければなりません。
%SQRT(数値引数) %SQRTは数値引数を受け入れ、引数の平方根を返します。
%SST(ストリング引数 開始位置の式<長さ式>) %SSTと%SUBSTRINGは引数として文字、16進数、DBCS、あるいはグラフィック・ストリング、開始位置の式、および任意指定の長さ式を受け入れます。これらの関数は、ストリング引数と同じタイプとCCSIDで、かつ長さ式によって指定された値と等しい長さをもつストリング引数のサブストリングを戻します。
%STDDEV(数値引数) %STDDEVは数値引数を受け入れ、GRPFLDパラメーターで定義するレコードのグループについてその引数の標準偏差を返します。引数はフィールド名または式でなければなりません(リテラルは使用できません)。レコードが1つも選択されなかった場合は、結果は空白値となります。レコードが選択された場合は、返される値は倍精度の浮動小数点数(*FLT8)です。%STDDEVは、グループ分け機能を使用するQUERYの非グループ分けフィールドに対して使用される総合関数です。
%STRIP(ストリング引き数 <ストリップ文字> <ストリップ関数>) %STRIPは、文字ストリング引数、DBCSストリング引数、またはグラフィック・ストリング引数、任意指定のストリップ文字、および任意指定のストリップ関数を引数として受け入れます。そして、ストリップ関数での指定に従って、ストリング引数からストリップ文字を除去した上で、結果のストリングを返します。ストリップ関数には次の3つのいずれかを使用できます。*LEAD 先行ストリップ文字を除去します。*TRAIL 後書きストリップ文字を除去します。*BOTH 先行および後書きの両方のストリップ文字を除去します。省略時のストリップ関数は*BOTHです。
%SUBSTRING (ストリング・フィールド名 開始位置 長さ) %SUBSTRINGは%SSTと同じ演算を行います。詳細については%SSTの説明を参照してください。
%SUM(数値引数) %SUM は数値引数を受け入れ、GRPFLD パラメーターで定義するレコードのグループ内でのその引数すべての値の合計値を返します。また、%SUM 数値引数はかっこで囲む必要があります。引数はフィールド名または式でなければなりません(リテラルは使用できません)。
%TAN(数値引数) %TANは数値引数を受け入れ、引数の正接を返します。引数は弧度で指定しなければなりません。%TANと%ATANとは逆の演算です。
%TANH(数値引数) %TANHは数値引数を受け入れ、引数の双曲正接を返します。引数は弧度で指定しなければなりません。%TANHと%ATANHとは逆の演算です。
%TIME(日付/時刻引数) %TIMEは日付/時刻引数を受け入れ、時刻を返します。日付/時刻引数として使用できるのは、時刻フィールドまたは時刻スタンプ・フィールド、時刻の外部形式を含む文字フィールドまたは16進数フィールド、もしくは時刻リテラルです。返される値のタイプは*TIMEです。
%TIMESTP(日付/時刻引数 日付/時刻引数) %TIMESTPは1つまたは2つの日付/時刻引数を受け入れ、時刻スタンプを返します。
%USER %USERでは引数は使用できません。この関数は、QUERYを実行しているジョブのユーザー・プロファイル名を返します。返される値のタイプは可変長文字(*VCHAR)で、最大長は18です。
%VAR(数値引数) %VARは数値引数を受け入れ、GRPFLDパラメーターで定義するレコードのグループについてその引数の差異を返します。引数はフィールド名または式でなければなりません(リテラルは使用できません)。
%XLATE(ストリング引数 修飾テーブル) %XLATEは、文字ストリング引数およびテーブル・オブジェクト(*TBL)の名前を受け入れて、テーブルの内容を用いて変換された最初の引数の値であるストリングを戻します。返される値は、長さとCCSIDが第1の引数と同じであるストリングです。
%XOR(ストリング引数...) %ORは複数の文字ストリング引数を受け入れ、引数のビットに関するXOR(論理排他的OR)であるストリングを戻します。この関数は、最初の引数と2番目の引数とをXORで結び、さらに後続の各引数とその前の結果とを次々にXORで結んでいきます。ある引数がその前の結果より長い場合は、XOR演算の前に前の結果がブランクで埋められます。引数のどれかが可変長である場合は、最大長がその引数の長さとして使用されます。最終結果は、タイプが*HEXで長さが最長の引数と同じであるストリングです。
%YEAR %YEARは日付/時刻引数を受け入れ、引数値の年の部分を返します。日付/時刻引数は、日付または時刻スタンプ・フィールド、日付期間または時刻スタンプ期間(フィールドあるいはリテラル)、もしくは数値フィールドまたはリテラルになります。返される値のタイプは*BIN4です。

制限付き組込み関数

以下に示す組込み関数は、QRYSLTパラメーターまたは GRPSLT パラメーターに指定する「等価」または「非等価」比較演算子の第2オペランドとしてのみ使用できるものです。

%NULL %NULLは引数を受け入れません。この関数は、レコード内のフィールドに空白値が含まれているかどうかにもとづいてレコードを選択または除外するために使用します。

以下に示す3つの組込み関数は、QRYSLTパラメーターまたはGRPSLTパラメーターに指定する「等価」比較演算子の第2オペランドとしてのみ使用できます。

%RANGE(下限値 上限値) %RANGEは、フィールドまたは式の下限値および上限値を指定するために使用します。%RANGEは等号演算子の右側に指定しなければなりません。下限および上限の引数は、演算子の左端に指定されたフィールドまたは式のタイプと一致する、フィールド名、文字ストリング、または数値リテラルでなければなりません。
%VALUES(許容値...) %VALUESは、フィールドまたは式の許容値のリストを指定するために使用します。%VALUEは等号演算子の右側に指定しなければなりません。使用可能値の引数は演算子の左端に指定されたフィールドまたは式のタイプと一致する文字ストリングまたは数値リテラルでなければなりません。
%WLDCRD (''パターン・ストリング'' ''ワイルド文字'') %WLDCRDは、比較演算子の左端に指定されていなければならない文字または16進数フィールドまたはストリング式(単一文字ストリング・リテラルからなる式を除く)の、ワイルドカード走査を実行するために使用されるパターンを指定します。%WLDCRDは等号演算子の右側に指定しなければなりません。パターン・ストリングの引数は、演算子の左側と一致する、文字ストリング、DBCS、あるいはグラフィック・リテラルでなければなりません。ワイルド文字の引数は、パターン・ストリングの中で使用される'ワイルドカード'文字を指定する任意指定のパラメーターです。
 

[ Previous ] [ HOME ] [ Upper ]

You are at K's tips-n-kicks of AS/400

 

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送