簡體   English   中英

如何連接兩個表並創建新列?

[英]How to join two tables and create new column?

使用 PostgreSQL 10.4。

我正在嘗試連接兩個表並創建一個新的 Array 字段來保存某些查詢的結果。

表一:

- id
- image
- difficulty
- answers (this is the new array field to create)

表 B:

- id (foreign key that references table a's id)
- name

我想將表 A 的答案數組的匹配 ID 的表 B 的“名稱”字段放入。 我怎樣才能完成這個/以及用什么查詢?

編輯:我知道如何進行 JOIN。 我在問在執行 JOIN 時創建一個包含值數組的新列的方法是什么?

Select * from A, B where A.id = B.id

如果我理解正確,您需要一個標准(AKA 內部)連接,它只會顯示表 a 和表 b 中都存在 id 的記錄

SELECT a.id,
       a.image,
       a.difficulty,
       a.answers,
       b.name
FROM   a
       JOIN b
           ON a.id - b.id

或者,一個左連接將顯示 a 中的所有記錄和 b 中沒有匹配 id 值的記錄將為空

 SELECT a.id,
        a.image,
        a.difficulty,
        a.answers,
        b.name
  FROM  a
        LEFT JOIN b
            ON a.id - b.id

很難從提供的信息中確定您需要哪一個,但我認為這就是您想要的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM