sql - 在这种情况下,我收到了缺少关键字错误
问题描述
在这种情况下,我收到了缺少关键字错误。
是什么原因?
SELECT (CASE WHEN (MM.MAKE_DESCRIPTION = 'TOY')
THEN
CASE
WHEN MM.MODEL_DESCRIPTION = 'SCION' THEN MM.MAKE_DESCRIPTION = 'SCION'
WHEN MM.MODEL_DESCRIPTION <> 'SCION' THEN MM.MAKE_DESCRIPTION
END
ELSE MM.MAKE_DESCRIPTION END) AS MAKE
FROM table_make MM where value ='test';
解决方案
看起来在您的一个 when 子句中,您已经将另一个布尔表达式作为您的 THEN 输出,因此您没有说 then show 'SCION',而是将 then show 布尔表达式放在了没有意义的地方。
SELECT (CASE WHEN (MM.MAKE_DESCRIPTION = 'TOY')
THEN
CASE
WHEN MM.MODEL_DESCRIPTION = 'SCION' THEN 'SCION' --edit here
WHEN MM.MODEL_DESCRIPTION <> 'SCION' THEN MM.MAKE_DESCRIPTION
END
ELSE MM.MAKE_DESCRIPTION END) AS MAKE
FROM table_make MM where value ='test';
推荐阅读
- python - Python OpenCV:从霍夫圆检测中获取统计信息
- v8 - 在 V8 中查看 typer 范围信息
- azure - 如何在 Azure Application Insights 中抑制 http 错误 440
- firebase - Firestore 授权:云功能与 Firestore 安全规则
- laravel - Laravel 护照试图获取 oauth/token。Guzzle 一直挂起,在其他 Guzzle 通话中也是如此
- jpa - SQLGrammerException:无法在 em.persist() 上获取 ResultSet
- java - 配置文件未在 Spring Boot 应用程序中设置
- laravel - 是否需要浏览器测试?
- python - 准备好的语句和不正确的参数数量
- javascript - 无法在“CanvasRenderingContext2D”上执行“quadraticCurveTo”:需要 4 个参数,但只有 0 个存在