検索

ホームページ  >  に質問  >  本文

列 (X) の値に基づいて列の合計を見つけ、X が存在する別の列のすべての値を取得します

次の表があります:

###コード### ###額### ###量### 12530100252010 ###7### 20 コード = 1 のすべての金額の合計を見つけたいのですが、すべての数量のカンマ区切り値と、そのようなすべてのイベントのすべての ID のカンマ区切り値も必要です。 ###コード### ###額### ###量### id
id 1
36 2 2
6 3 5
1 4 1
100 5 1
1 6 4
136 1 10
###例えば: 出力は次のようになります:

18036、100、1、201,4,5,7同様のことができることはわかっています リーリー は、このコードに対応する合計を取得するために使用されますが、そのようなすべての数量と ID を取得する方法がわかりません。
P粉439804514P粉439804514267日前445

全員に返信(2)返信します

  • P粉578343994

    P粉5783439942024-04-02 00:22:58

    MySQL では GROUP_CONCAT

    を使用できます

    クエリ#1

    リーリー
  • DBフィドル
    ###コード### ###合計金額### 180DB Fiddle で見る
    id qts
    1,4,5,7 36,100,1,20

    Postgres では string_agg

    を使用できます

    クエリ#1

    リーリー

    ###コード### ###合計金額###
    idqts1,4,5,736,100,1,20DB Fiddle で見る

    返事
    0
  • P粉323374878

    P粉3233748782024-04-02 00:12:44

    GROUP_CONCAT を使用するだけで、すべてのデータをグループ化できます。

    リーリー

    GROUP_CONCAT デフォルトでは、区切り文字としてカンマ (,) が使用されるため、同じクエリを作成できます:

    リーリー

    他の区切り文字が必要な場合は、それを具体的に定義することもできます。

    返事
    0
  • キャンセル返事
  • 1 80