0

次の SQL クエリがあります。

SELECT
@weekenddtm = CONVERT(VARCHAR,DATEADD(DD,(7 - DATEPART(DW,@p_end_dtm)),@p_end_dtm),111)

そして、このクエリを使用してそれをオラクルに変換しようとしました:

v_weekenddtm   := CAST(p_end_dtm + NUMTODSINTERVAL((7-TO_NUMBER(TO_CHAR(p_end_dtm,'D'))),'DAY')  AS DATE);

、しかし、それは私にエラーを与えています。先に進む方法はありますか?

4

1 に答える 1

1

p_end_dtm と v_weekend_dtm のデータ型は何ですか? 次の場合、コードは機能します。

declare
   p_end_dtm timestamp;
   v_weekend_dtm date;
begin
   v_weekend_dtm := CAST(p_end_dtm+ NUMTODSINTERVAL((7-TO_NUMBER(TO_CHAR(p_end_dtm,'D'))),'DAY')  AS DATE);
end;
于 2010-07-09T09:55:13.063 に答える