【发布时间】:2019-10-21 16:54:00
【问题描述】:
我有一张桌子:
ID DATE RANGE STATUS
--------------------------------------------
123 30-SEP-2019 000 C
123 30-SEP-2019 001 NULL
345 25-SEP-2019 000 C
345 30-SEP-2019 001 NULL
567 30-SEP-2019 000 C
567 30-SEP-2019 001 NULL
789 27-SEP-2019 000 C
789 30-SEP-2019 001 NULL
具有相同 ID(例如 123)的记录被视为具有不同 RANGE 的相同记录。 我需要将 001 RANGE 记录的状态更新为 Y,其中 000 RANGE 记录的日期应为 30-SEP-2019。
例如。更新查询应将 ID - '123' 和 RANGE - '001' 的记录的状态更新为'Y',因为对于 ID - '123' 和 RANGE - '000' 记录的 DATE 是'30-SEP- 2019 年'。它还应该使用 ID - 567 更新 001 RANGE 记录的状态。
它不应更新 ID 789 和 345 的 001 RANGE 的状态,因为那些 000 RANGE 记录的 DATE 不等于 30-SEP-2019。
我怎样才能做到这一点?
【问题讨论】:
标签: sql sql-server sybase