我有一张这样的桌子:

| id | cars                     |      owner     |
|----|--------------------------|----------------|
|  1 | {tesla, bmw, mercedes}   | Chris Houghton |
|  2 | {toyota, bmw, fiat}      | Matt Quinn     |

是否有方法访问car表数组的不同值并将它们存储在没有重复值的新表中?
我要这张桌子
| brands |
|--------|
|  tesla |
|  bmw   |
|mercedes|
| toyota |
|  fiat  |

最佳答案

我相信你在找这种说法。

SELECT
 DISTINCT
  table_array.array_unnest
FROM (
  SELECT
   UNNEST(cars)
  FROM
   <table>
) AS table_array(array_unnest)

demo
这确实有效,但是我如何将它们存储在一个列中
桌子制造业的“品牌”。
INSERT INTO
 Manufactures
(brand)
SELECT
  DISTINCT
    table_array.array_unnest
  FROM (
    SELECT
      UNNEST(cars)
    FROM
     <table>
  ) AS table_array(array_unnest)

demo

关于postgresql - 访问列数组并将其存储在新表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55525782/

10-13 07:26
查看更多