gpt4 book ai didi

case - PostgreSQL CASE 语句语法错误

转载 作者:行者123 更新时间:2023-12-04 18:15:50 28 4
gpt4 key购买 nike

我正在尝试按照 PostgreSQL 手册中的说明进行操作。
PostgreSQL: Documentation: 9.1: Control Structures
我的 PostgreSQL 服务器是 32 位 Windows 上的 9.1.14 版本。

以下 SQL 语句意外导致语法错误:

SELECT
CASE 1
WHEN 1,2 THEN 'x'
ELSE 'y'
END;

我期待它返回'x';

然而,更传统的代码运行良好:
SELECT
CASE 1
WHEN 1 THEN 'x'
WHEN 2 THEN 'x'
ELSE 'y'
END;

最佳答案

您正在使用 CASE由过程语言 plpgsql 提供的语法.这与 SQL CASE 相似但不相同。句法。这是 CASE 的 SQL 版本的链接.

你看,1,2不允许,只有一个普通的 expression .所以你可以写:

SELECT
CASE
WHEN 1 in (1,2) THEN 'x'
ELSE 'y'
END;

关于case - PostgreSQL CASE 语句语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11751863/

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