2016-09-07 3 views
0

更新クエリを実行するには、入力した日付がデータベースに格納されている日付よりも大きいかどうかを確認します。日付を含む更新クエリの実行

IF @input_date > table.date 
    UPDATE table SET table.value = 0, table.date = @input_date 
ELSE 
    UPDATE table SET table.value = @input_value, table.date = @input_date 

答えて

3

使用CASE声明

が、これは更新ステートメントのWHERE条件にテストを置くことになる行うには、この

UPDATE table 
    SET table.value = CASE WHEN @input_date > table.date THEN 0 ELSE @input_value END, 
     table.date = @input_date 
+1

もちろんです! Caseステートメントの使用。私はそれを試み、結果で更新します、ありがとう。 – walangala

+1

ありがとう!私はこれらの基本を覚えておくために練習を続けなければなりません。 – walangala

0

別の方法を試してみてください。そのため、条件が満たされたときにのみ更新が行われます

update 
    table 
set 
    table.value = @input_date 
where 
    table.value < @input_date 
関連する問題