几个名称的列表,用相同的信息更新表中的行

时间:2013-06-26 21:09:46

标签: mysql

有人可以刷新我的内存,了解如何为此构建查询。

我想使用几个名称(第一个和最后一个)的列表,用相同的信息更新表中的行。例如:

如果我的表设置了列: [FIRST_NAME],[姓氏],[DOB],[married_status]

我想找到:

(鲍勃,史密斯), (罗伯特,约翰), (简,母鹿);

并将[married_status]的字段编辑为'm'。

如何构建此搜索并替换?

谢谢!

3 个答案:

答案 0 :(得分:2)

使用IN运算符:

UPDATE myTable
SET married_status = 'm'
WHERE (first_name, last_name) IN (
  ('bob'   , 'smith'),
  ('robert', 'john'),
  ('jane'  , 'doe'))

答案 1 :(得分:1)

代码:

 UPDATE tablename 
SET married_status = 'm'
WHERE 
    ( first_name = 'bob' AND last_name = 'smith' )
OR
    ( first_name = 'robert' AND last_name = 'john' )
OR
    ( first_name = 'jane' AND last_name = 'doe' )

答案 2 :(得分:0)

您将使用UPDATE查询:

UPDATE `table`
SET `married_status` = 'm'
WHERE
   (`first_name` = 'bob' AND `last_name` = 'smith')
   OR (`first_name` = 'robert' AND `last_name` = 'john')
   OR (`first_name` = 'jane' AND `last_name` = 'doe')