0

SQL に次のコードがあります。

   CASE WHEN ISDATE(CONVERT(VARCHAR,t1.RequestedDeliveryDate,@dateformat)) = 1 
        THEN CASE WHEN YEAR(t1.RequestedDeliveryDate) >= 2000 
                  THEN CONVERT(VARCHAR,t1.RequestedDeliveryDate,@dateformat) 
                  ELSE '-' 
             End 
        ELSE '-' 
    END AS [Requested delivery]

フィールド [t1.RequestedDeliveryDate] の日付の日の値が 12 未満の場合、結果には日付が表示されます。日の値が 12 を超える場合、ハイフンが表示されます。

@dateformat は整数で、105 に設定されます

なんで?ここに表示されていない/間違っていることは何ですか?

RG、エリック

4

1 に答える 1

0

SpectralGhosts の回答が役に立ちました。

最初の @dateformat を 101 に置き換えると、問題は解決しました。

于 2013-09-06T17:22:20.923 に答える