私は削除のためにmssqlサーバー上で仕事をしています。しかし、私の希望は削除する前に別のテーブルを更新することです。 "user_id"列で接続された2つのテーブルがあり、テーブル名は "UserInfo"と "AdvertInfo"で、user_id列に接続されています。私は7日後にgive_advert_dayを削除しています。しかし、それが削除されると、ıは(+1)user_advert_number列を増やしたいと思います。 user_idで削除した場合、テーブルから3または4などのデータを削除した場合、それらからの接続データは+3、+4、またはエッチを増加します。これには道がありますか?mssqlで同時に削除と更新をします
UPDATE u
SET u.user_advert_number = u.user_advert_number + 1
FROM UserInfo as u
INNER JOIN AdvertInfo AS a ON u.user_id = a.user_id
WHERE a.advert_begin_date < DATEADD(day, -7, GETDATE()))
ところで、あなたの削除句には、次のように記述することができます:
Delete
from AdvertInfo
where advert_begin_date < DATEADD(day, -7, GETDATE()))
ための必要はありません。ここ はあなたがJOIN
とUPDATE
することができます私の削除コマンド
Delete from AdvertInfo where advert_id In (
select advert_id from AdvertInfo
where advert_begin_date < DATEADD(day, -7, GETDATE()))
トリガーを見ましたか? –
この表のトリガーを使用して、更新後に自動的に削除することができます。 –
私はトリガーについての情報がないので、ıcouldntそれを行う。 – KAYA