column2,
(
CASE
WHEN
column3
=
'A'
THEN
(
SELECT
value1
FROM
table2
WHERE
column4
=
'X'
)
WHEN
column3
=
'B'
THEN
(
SELECT
value2
FROM
table2
WHERE
column4
=
'Y'
)
ELSE
(
SELECT
value3
FROM
table2
WHERE
column4
=
'Z'
)
END
)
AS
result_column
FROM
table1;
在上面的示例中,Case 语句嵌套了三个子查询,每个子查询都从表 table2 中查询数据。当 column3 的值为 'A' 时,将返回表 table2 中 column4 为 'X' 的 value1;当 column3 的值为 'B' 时,将返回表 table2 中 column4 为 'Y' 的 value2;其他情况下将返回表 table2 中 column4 为 'Z' 的 value3。
最终查询结果将包含 column1、column2 和 result_column,其中 result_column 将是 Case 语句嵌套子查询的结果。