ホームページ > データベース > mysql チュートリアル > Postgres 列内のカンマ区切りデータを複数の列に分割するにはどうすればよいですか?

Postgres 列内のカンマ区切りデータを複数の列に分割するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-19 02:10:09
オリジナル
697 人が閲覧しました

How Can I Split Comma-Separated Data in a Postgres Column into Multiple Columns?

カンマ区切りの列データを複数の列に分割します

多くのデータ シナリオでは、データは連結形式で保存され、カンマなどの区切り文字で区切られます。これらの列から単一の値を抽出するには、PostgreSQL の split_part() 関数を使用できます。

次のデータについて考えてみましょう:

<code>Column 
------- 
a,b,c,d</code>
ログイン後にコピー

このカンマ区切りのデータを個別の列に分割するには、split_part() 関数を使用できます。その方法は次のとおりです:

<code class="language-sql">SELECT split_part(col, ',', 1) AS col1,
       split_part(col, ',', 2) AS col2,
       split_part(col, ',', 3) AS col3,
       split_part(col, ',', 4) AS col4
FROM   tbl;</code>
ログイン後にコピー

このクエリは、カンマ区切り文字に基づいて col 列のデータを分割することにより、4 つの新しい列 (col1col2col3、および col4) を作成します。出力は次のようになります:

<code>Column1  Column2 Column3 Column4 
-------  ------- ------- -------
a        b       c       d</code>
ログイン後にコピー

split_part() 関数は、分割する列 (col)、使用する区切り記号 (,)、抽出する値の位置の 3 つのパラメーターを受け入れます。この例では、col 列から最初の 4 つの値 (最大 4 つ) を抽出します。

元の列のデータ項目数を超える列は空の文字列 ('') で埋められます。この手法を使用すると、カンマ区切りのデータを複数の列に簡単に分割して、さらなる分析や操作を行うことができます。

以上がPostgres 列内のカンマ区切りデータを複数の列に分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート