首页 >每日编程 >mysql知识 >mysql中case的用法

mysql中case的用法

下次还敢
下次还敢原创
2024-04-27 09:12:24820浏览

CASE 语句用于根据条件返回不同值,其语法为:CASE WHEN condition_1 THEN result_1 WHEN condition_2 THEN result_2 ELSE default_result END。它可以用于:定义条件、指定结果、提供默认结果。其他用法包括值转换、检查 NULL 值、选择最大或最小值。

mysql中case的用法

MySQL 中 CASE 的用法

CASE 语句在 MySQL 中用于根据指定的条件返回不同的值。它的语法如下:

<code class="sql">CASE
  WHEN condition_1 THEN result_1
  WHEN condition_2 THEN result_2
  ELSE default_result
END</code>

如何使用 CASE 语句?

  1. 定义条件:使用 WHEN 子句指定要评估的条件。
  2. 指定结果:如果条件为真,则返回相应的结果。
  3. 提供默认结果:使用 ELSE 子句指定当所有条件都不为真时的默认值。

示例:

假设有一张名为 customers 的表格,其中包含以下列:

  • customer_id:客户 ID
  • customer_type:客户类型(例如 Standard、Premium)
  • discount:根据客户类型提供的折扣

要根据客户类型计算折扣,可以使用 CASE 语句:

<code class="sql">SELECT customer_id,
       CASE
         WHEN customer_type = 'Standard' THEN 0.1
         WHEN customer_type = 'Premium' THEN 0.2
         ELSE 0
       END AS discount
FROM customers;</code>

其他用法:

CASE 语句还可以用于:

  • 将值转换为其他类型(使用 CAST() 函数)
  • 检查 NULL 值(使用 IS NULL 和 IS NOT NULL)
  • 从多个条件中选择最大值或最小值(使用 GREATEST() 和 LEAST() 函数)

注意:

  • CASE 语句中的条件必须都为同一种类型。
  • ELSE 子句是可选的,但如果不指定默认结果,则可能会返回 NULL 值。
  • 可以嵌套 CASE 语句以创建更复杂的结果集。

以上是mysql中case的用法的详细内容。更多信息请关注PHP中文网其他相关文章!

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