我正在尝试创建一个 SQL 查询,以根据单独表中的单元格值从表中获取一个表数据。
我的最终查询应该如下所示: 从“联系人业务”中选择“名称”,其中“ID”IN ('238120','238121') AND“ACTIVEFLAG”= 'Y'; -- 这有效
为了使其正确执行,我需要从第二个表中获取 ('238120','238121') 值: 从“输入”中选择“('||“ID_CONTRACTOR_CONTACT”||')',其中“FK_SOURCE”=“20231725175”和“DOCKET”=“324771”和“ACTIVEFLAG”!=“N”; -- 这也有效
我试图将它们嵌套起来,对我来说,这就是问题所在。我当前的 SQL 版本如下所示: 从“联系人业务”中选择“名称”,其中“ID”IN (SELECT '('||"ID_CONTRACTOR_CONTACT"||')' FROM "INPUT" WHERE "FK_SOURCE" = '20231725175' AND "DOCKET" = '324771'和“ACTIVEFLAG”!=“N”)和“ACTIVEFLAG”=“Y”; 这不会返回任何记录,并且我没有收到任何错误。
如果有帮助,我正在运行 pgAdmin 4 v 8.5
您需要删除 ID_CONTRACTOR_CONTACT 周围子查询中不必要的字符串连接和括号。
SELECT "NAME"
FROM "CONTACT-BUSINESS"
WHERE "ID" IN (
SELECT "ID_CONTRACTOR_CONTACT"
FROM "INPUT"
WHERE "FK_SOURCE" = '20231725175'
AND "DOCKET" = '324771'
AND "ACTIVEFLAG" != 'N'
)
AND "ACTIVEFLAG" = 'Y';