我有對象和它們的類型的表中的表如下一列相同的值的數目:SQL:按無聚集/收縮
objectType | object
107 Boeing
107 Airbus
323 Audi
323 Mercedes
323 BMW
985 Ducati
我想計算結果表所示以下顯示每行的groupSizeOfObject列,並表示與該行中的對象具有相同objectType的表中對象的數量。例如,有三個objectType爲323的對象;奧迪,奔馳和寶馬,所以三行中的每一行在groupSizeOfObjectType列中都應該有一個3。
objectType | object | groupSizeOfObjectType
323 Audi 3
323 Mercedes 3
323 BMW 3
107 Boeing 2
107 Airbus 2
985 Ducati 1
使用group by
和count(*)
指令可以讓我計算以下,但如下單個對象行被分爲一個結果行:
objectType | object | groupSizeOfObjectType (for clarification, optional)
323 Audi 3
107 Boeing 2
985 Ducati 1
在結果中,我需要擁有所有對象。
我該如何做到這一點?
我實際的問題是一個比較複雜的。由於我有一個額外的objectKind列的表如下:
objectType | objectKind | object
107 B Boeing
107 B Airbus
323 D Audi
323 D Mercedes
323 D BMW
323 D Lexus
985 B Ducati
我想計算表示兩者的objectType和objectKind的數列,然後通過objectKind首先命令產生的行,然後對象類型,無論是在降序排列產生以下結果:
objectType | objectKind | object
323 D Audi
323 D Mercedes
323 D BMW
323 D Lexus
107 B Boeing
107 B Airbus
985 B Ducati
您正在使用什麼數據庫? SQLite或MySQL? –
提高問題的可讀性和說明,以便更好地解釋這個問題和期望的結果 – o0rebelious0o