MySQL 自己結合の欠損データ
P粉464208937
P粉464208937 2024-03-31 10:07:32
0
1
355

テーブルで自己結合を実行して、値を列ごとに表示したいと考えています。各オブジェクトには複数のプロパティ (既知の制限まで) がありますが、すべてのオブジェクトのすべてのプロパティが保存されるわけではありません。さまざまな結合を試しましたが、常に欠落行があり、NULL 値が必要です。

開始テーブル:

###価値### 1 ###1つ### bc ###1つ### 1525私の目標 (考えられる 3 つのプロパティが であると仮定して)
オブジェクトID 属性
10 1
20 1
30 2
2 c
a,b,c

オブジェクトID ###1つ###

bc203025
P粉464208937
P粉464208937

全員に返信(1)
P粉563446579

次のクエリを使用してこれを実現できます:

リーリー

イラスト:

CASE ステートメントを使用して、Attribute の値を特定の値 (つまり、「a」、「b」など) として選択します。したがって、その特定の列では、その特定の属性の値のみが選択されます。

SUM を使用して、Value フィールドの値を集計します。このようにして、ObjectID の複数行の値が 1 つの行に集約されます。

数値以外の値を使用する可能性があるため

SUM を使用したくない場合は、@xQbert の提案に従い、次のように MAX を使用できます。 リーリー

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
1 10
2 15