我有一張叫做'orders'的表,它記錄了一頓飯的訂單ID,一個訂購這頓飯和一頓飯的人的id它可以是1,2,或3)SQL-計算「類似」行的數量並將結果放在另一個表中
orders
oid | pid | meal
________________
1 | 1 | 2
2 | 1 | 3
3 | 3 | 1
4 | 5 | 2
5 | 5 | 2
6 | 5 | 1
我想產生一個結果,讓我查看訂單數每餐每個PID:
pid | meal1 | meal2 | meal3
____________________________
1 | 0 | 1 | 1
3 | 1 | 0 | 0
5 | 0 | 2 | 1
我不是一個SQL專家,但我想我會先用pid把它分組,然後再用餐。但是,我將如何做計數?我真的迷失了。
這就是所謂的支點。但是,mySQL不支持樞軸。所以這可以用case語句和一個和來完成。按用餐分組不成功,因爲您希望您的用餐#成爲不同的欄目。使用case語句,您可以爲每餐每一餐定義一個列#然後簡單地評估所討論的記錄是否爲1,2,3餐,然後總結結果。 – xQbert