【问题标题】:How to lookup value from a table and select it within the current table如何从表中查找值并在当前表中选择它
【发布时间】:2023-01-20 16:55:58
【问题描述】:

我正在尝试从表 (Table2) 中查找值 (c) 并将其链接到我在表 1 中的值 (a)。当我运行以下行时,出现错误“无法评估不受支持的子查询类型”。不知道如何解决它。任何帮助深表感谢。

SELECT a, b, (SELECT c FROM Table2 AS T2 WHERE T1.a = T2.a) AS c, FROM Table1 AS T1;

我尝试了不同的子查询类型,但找不到解决方案。

【问题讨论】:

    标签: sql select subquery snowflake-cloud-data-platform


    【解决方案1】:

    您可以在列a 上连接 Table1 和 Table2,以便您可以从 Table2 中选择值 c 并将其链接到 Table1 中的值 a

    下面是一个示例,说明如何使用连接语句来完成此操作:

    SELECT T1.a, T1.b, T2.c
    FROM Table1 T1
    JOIN Table2 T2 ON T1.a = T2.a;
    

    此查询分别从Table1Table2 中选择列abc,并将它们连接到两个表的列a 上。

    如果 Table1 的记录多于 Table2,另一种方法是使用左连接。

    SELECT T1.a, T1.b, T2.c
    FROM Table1 T1
    LEFT JOIN Table2 T2 ON T1.a = T2.a;
    

    这将显示来自Table1 的所有记录和来自Table2 的匹配记录。如果 Table2 没有匹配的记录,则 c 列将为 null

    请注意,以上示例是按照ANSI SQL标准编写的,语法可能因您使用的特定数据库管理系统而异。

    【讨论】:

      猜你喜欢
      • 2018-04-07
      • 2020-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-12
      • 1970-01-01
      • 2018-02-04
      相关资源
      最近更新 更多