我需要更新内部表中的一些数据。这是国家领域。我的结果集是100行。
我想用TX更新前5个 接下来的五个与DE 接下来的五个与CA
然后重新开始TX并继续,直到我完成所有100行。
由于
答案 0 :(得分:1)
如果您没有使用ROW_NUMBER来生成序列号,那么您需要一个序列号。
UPDATE a
SET state = b.state
FROM data AS a
INNER JOIN (VALUES (0, 'TX'), (1, 'DE'), (2, 'CA')) AS b(id, state)
ON b.id = ((a.rownumber - 1) / 5) % 3