SQL 在一次 UPDATE 中执行多个 SET?
我有一个像这样的 SQL 字段:
FIELD_A
cat
dog
bird
mole
dog
我想将
- 所有 dog 更新为 pug
- 将所有 bird 更新为 猫头鹰
- 所有猫到安哥拉。
显然,SQL UPDATE
语句一次只允许一个 SET
条件。
如何编写一个查询来一次性完成上述操作?
I have a SQL field like so:
FIELD_A
cat
dog
bird
mole
dog
I want to UPDATE
- all dog to pug
- all bird to owl
- all cat to angora.
Apparently, the SQL UPDATE
statement only allows one SET
condition at a time.
How can I write a query to accomplish the above operation all at once?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
对于 WHERE 子句,CASE 表达式中的 ELSE 子句是可选的或冗余的 - 但包含 ELSE 可以为您提供可靠性。更严重的错误之一是没有涵盖“以上都不是”的替代方案,并发现所有未提及的内容都设置为 NULL。
With the WHERE clause, the ELSE clause in the CASE expression is optional or redundant - but including the ELSE gives you reliability. One of the more serious mistakes is not to cover that 'none of the above' alternative and find that everything that wasn't mentioned is set to NULL.
使用 CASE 子句可以实现这一点。这里有一个示例
http://www.java2s.com/Code/SQLServer/ Select-Query/UseCASEintheUPDATEstatement.htm
with CASE clause you can accomplish this. here an example
http://www.java2s.com/Code/SQLServer/Select-Query/UseCASEintheUPDATEstatement.htm