0

ストアド プロシージャの数値変数の最初の 5 桁を確認する必要があります。以下の例を見つけてください。

SP:

IN "IN_CNBR" VARCHAR(100),

DECLARE v_end VARCHAR(16);

v_end は DB からフェッチされ、最大 16 桁の値を持つ可能性があります。しかし、v_end の最初の 5 桁を分割し、入力パラメータで確認する必要があります

そして私は小切手を持っています、

IF (((CAST(IN_CNBR AS BIGINT)) > (CAST(v_end AS BIGINT))))

以下は可能ですか?

v_end:=v_end.substring(0,5);

それから

IF (((CAST(IN_CNBR AS BIGINT)) > (CAST(v_end AS BIGINT))))

前もって感謝します、

4

1 に答える 1

1

次のように、変数をそれ自体の最初の 5 文字に設定できます。

set v_end = left(v_end,5);

また

set v_end = substr(v_end,1,5);

DB2substrは 1 ベースの索引付けを使用することに注意してください。

于 2013-02-27T08:25:47.440 に答える