首页 >数据库 >mysql教程 >如何使用 SQL 的 CASE 语句在 SELECT 查询中有条件地赋值?

如何使用 SQL 的 CASE 语句在 SELECT 查询中有条件地赋值?

Barbara Streisand
Barbara Streisand原创
2024-12-29 17:12:15472浏览

How Can SQL's CASE Statement Be Used to Conditionally Assign Values in SELECT Queries?

理解 SELECT 语句中的 CASE

在 SQL 中,CASE 语句提供了一种灵活的方法来根据特定条件有条件地检索数据。要了解 CASE 在 SELECT 语句中的工作原理,让我们考虑一个示例,其中我们要根据现有条件为新列分配值:

考虑查询:

SELECT xxx, yyy,
CASE
  WHEN bbb = 'blackberry' THEN 'blackberry'
  WHEN sss = 'samsung' THEN 'samsung'
  ELSE NULL
END AS 'Handphone'
FROM (
  SELECT ???? .....
);

这里, CASE 语句用于计算两列 bbb 和 sss 的值。如果 bbb 与“blackberry”匹配,则将“blackberry”指定为新列“Handphone”的值。同样,如果 sss 与“samsung”匹配,则分配“samsung”。否则,该值将设置为 NULL。

此查询的输出将类似于以下内容:

name | age | Handphone |
xxx1 | yyy1 | blackberry |
xxx2 | yyy2 | blackberry |

在这种情况下,对于以下行,“blackberry”将分配给“Handphone”: bbb 等于“blackberry”。

有关 CASE 语句语法和用法的更多参考,请参阅 MSDN Transact SQL 参考等资源(https://msdn.microsoft.com/en-us/library/ms181765.aspx)。此外,SQL Server Central (https://www.sqlservercentral.com/) 为 SQL Server 爱好者提供了全面的资源集合。

以上是如何使用 SQL 的 CASE 语句在 SELECT 查询中有条件地赋值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn