如何在sql中循环表的项目列表

Ahs*_*san 2 sql database sql-server cursor

我是sql的新手,我想要,我有一个表 Customer
,我添加了一个新的字段,Region现在我想
在SQL中进行一些更改.我想得到所有记录Customer并检查每一个

 // This check will perfome for every customer let suppose we have our first customer
if currentcustomer.Country = 'US' 
 {
  UPDATE currentcustomer SET currentcustomer.Region=currentcustomer.id
 }
 else
 {
    UPDATE  currentcustomer SET currentcustomer.Region=currentcustomer.ZIP
  }
Run Code Online (Sandbox Code Playgroud)

这是我想要做的,但我不知道如何在所有客户这样做,以及如何在SQL中执行此操作.请帮帮我谢谢!

Ode*_*ded 8

UPDATE Customer SET Region='AA'
WHERE Country = 'US'

UPDATE Customer SET Region='ZZ'
WHERE Country <> 'US'
Run Code Online (Sandbox Code Playgroud)

避免在SQL中循环 - 它不是为循环而设计的.

尝试在基于集合的术语中制定您的要求(我需要更新所有国家/ US地区的所有客户AA以及所有其他地区的客户ZZ).

更新:

看到你的编辑,并假设它是合理的(兼容的数据类型和有意义的数据):

UPDATE Customer SET Region= id
WHERE Country = 'US'

UPDATE Customer SET Region= Zip
WHERE Country <> 'US'
Run Code Online (Sandbox Code Playgroud)