gpt4 book ai didi

sql - 使用 SELECT 结果作为其他 SELECT 中的 COLUMN 名称

转载 作者:行者123 更新时间:2023-12-02 10:57:03 24 4
gpt4 key购买 nike

是否可以使用选择的结果作为字符串与其他选择中列名称中的另一个字符串连接?

示例:

SELECT brand 
FROM articles a
WHERE a.id='12345678'

结果:BRAND_A

我现在想要将 _PRICE 连接到 BRAND_A...

SELECT (
SELECT brand
FROM articles a
WHERE a.id = '12345678'
) + "_PRICE"
FROM prices p
WHERE p.id = '12345678'

...实际检索:

SELECT BRAND_A_PRICE
FROM prices p
WHERE p.id = '12345678'

最佳答案

您不需要动态 SQL 来执行此操作(如果可能,应避免使用动态 SQL)。相反,您可以使用 CASE 语句。您可以使用一条语句来完成此操作,但出于显示目的,我已将其分开:

DECLARE @brand VARCHAR(100) = (SELECT brand FROM articles a WHERE a.id='12345678')

SELECT CASE @brand
WHEN 'BRAND_A' THEN BRAND_A_PRICE
WHEN 'BRAND_B' THEN BRAND_B_PRICE
WHEN 'BRAND_C' THEN BRAND_C_PRICE
ELSE 0 END AS PRICE
FROM prices
WHERE id='12345678'

关于sql - 使用 SELECT 结果作为其他 SELECT 中的 COLUMN 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27152075/

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