Saya ingin melakukan penyambungan sendiri di atas meja untuk membentangkan nilai dari segi lajur. Untuk setiap objek, terdapat berbilang sifat (sehingga had yang diketahui), tetapi tidak semua sifat untuk semua objek disimpan. Saya telah mencuba pelbagai gabungan tetapi sentiasa ada baris yang hilang dan saya mahukan nilai nol.
Meja permulaan:
ID Objek | Hartanah | Nilai |
---|---|---|
1 | satu | 10 |
1 | b | 20 |
1 | c | 30 |
2 | satu | 15 |
2 | c | 25 |
Matlamat saya (dengan andaian saya tahu tiga sifat yang mungkin adalah a,b,c
) ialah
ID Objek | satu | b | c |
---|---|---|---|
1 | 10 | 20 | 30 |
2 | 15 | 25 |
Anda boleh menggunakan pertanyaan berikut untuk mencapainya:
Penerangan:
Gunakan nilai
CASE
语句,我们选择Attribute
untuk nilai tertentu, iaitu "a", "b", dsb. Jadi untuk lajur tertentu itu, hanya nilai atribut tertentu itu dipilih.Nilai berbilang baris menggunakan
SUM
我们聚合Value
字段的值。这样,任何ObjectID
akan diagregatkan menjadi satu baris.Kalau tak nak guna
SUM
因为您可能有非数字值,您可以按照 @xQbert 的建议使用MAX
macam ni: