我有一個表,其中有一個按位列表示可以附加到條目的狀態列表。每個條目可以有多個狀態選擇(因此使用按位邏輯)。在mysql中計算重疊按位列
我想要做的是拉一個查詢,它會告訴我每個狀態有多少個條目(即每個位打開多少次)。我遇到的困難是,當然有重疊,所以GROUP BY或DISTINCT不會削減它(據我所知)。
舉個例子,讓我們只是有兩個值,1和2,後面的數據
Id | Status
1 | 1
2 | 1
3 | 2
4 | 3
現在,我要統計有多少項有每個位,所以我想的東西纔是最重要該值爲3到1點2總數兩者輸出是這樣的:
Bit | Count
1 | 3
2 | 2
我能得到到目前爲止最接近似乎拉出不同的值,然後利用加入那些有多次進入其相應的數PHP。顯然,我想做一些更優雅的事情。
任何想法?
是啊,這可能是工作。工會有點醜陋,但我懷疑我不得不按照這些路線做些事情。我想知道是否有一種方法可以使用內部連接和BIT_OR()將合適的值存入位表中,但我無法弄清楚如何分解結果。 – dmnc 2011-04-05 11:59:54