我有一张像这样的“假人”表
name, status , date, is-updated
n1, s1, 2013-09-01, false
n2, s2, 2013-09-01, false
n1, s11, 2013-09-02, false
现在为了获取特定名称的最新时间戳,我正在使用查询:
select name, status, max(date)
from dummy
where is-updated=false
group by name,status
这按预期工作正常,返回两行
n2, s2, 2013-09-01, false
n1, s11, 2013-09-02, false
现在如何将上述两行的“is-updated”值更新为“true”?sql 中的“IN”子句不支持多列。
update dummy
set is-updated = true
where name, status, date in (
select name, status, max(date)
from dummy
where is-updated=false
group by name,status
)
有人能帮忙吗 ?谢谢。