gpt4 book ai didi

mysql - 使用 CASE 在 MySQL 5.7 上的这个查询有什么问题?

转载 作者:太空宇宙 更新时间:2023-11-03 11:23:37 24 4
gpt4 key购买 nike

我正在尝试在 HeidiSQl 上的 MySQ L5.7 上使用 CASE,

我想用CASE调用一个表,用0、1-100、100或更多区间的CASE。

但是没用

SELECT ventas.Ventas_Id AS ID, ventas.Ventas_Fecha AS fecha, ventas.Ventas_Neto AS neto
CASE Ventas_Total
WHEN ventas.Ventas_Total = 0 THEN 'C'
WHEN ventas.Ventas_Total > 100 THEN 'S'
WHEN ventas.Ventas_Total < 100 THEN 'L'
END AS "Categoria"
FROM ventas

我有这个错误信息

SQL Error (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CASE ventas.Ventas_Total

   WHEN ventas.Ventas_Total = 0 THEN 'C'

at line 4

最佳答案

CASE 表达式有两种风格,您实际上混合了两种类型的语法。因为你在 CASE 表达式中有一个不等式,你只能使用这种风格:

CASE WHEN Ventas_Total = 0 THEN 'C'
WHEN Ventas_Total > 100 THEN 'S'
WHEN Ventas_Total < 100 THEN 'L'
END AS Categoria

CASE 表达式的另一种风格仅在您只想进行相等比较时才有效,例如

CASE Ventas_Total
WHEN 1 THEN 'A'
WHEN 2 THEN 'B'
WHEN 3 THEN 'C' END AS some_alias

关于mysql - 使用 CASE 在 MySQL 5.7 上的这个查询有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56800107/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com