我有如下表:由總場比賽下令返回結果在同一列
+---------+------------+
| EntryID | CategoryID |
+---------+------------+
| 11 | 15 |
| 11 | 18 |
| 186 | 15 |
| 186 | 18 |
| 186 | 334 |
| 187 | 15 |
| 187 | 18 |
| 187 | 337 |
| 278 | 15 |
| 278 | 18 |
| 278 | 337 |
| 278 | 457 |
+---------+------------+
我想獲得的比賽的相關程度的順序,這是CategoryID rows/CategoryIDs specified
百分比結果。
我卡在哪裏就是這個計算需要在多個categoryID
的查詢上工作。例如,如果我要查找categoryID
18,那麼entryID
應該首先出現,因爲它具有50%的匹配百分比(請原諒我的陳詞濫調),則186或187排在第二位,匹配百分比爲33%(在我的使用案例中,排序並不重要),那麼278會以25%的匹配百分比排在最後。
我的問題是:有沒有辦法在一個/多個SQL查詢/查詢中進行這種排序? Java可以隨時使用,所以我可以用Java而不是MySQL進行排序,但是我想看看是否有純SQL解決方案。此外,有沒有更好的方法來計算我的情況下的相關性?
(?而只是爲了好玩,有一個更好的標題這個問題)
有一定的辦法,我只是不知道你想要什麼作爲答案......你能畫嗎?在你詢問的查詢已經運行後,所得的表格是否已經生成 – Daren
@Daren我在找什麼? entryID的列表按相關性排序。有關示例,請參閱第2段。 – tyteen4a03
問題的一個更好的標題可能是:如何計算sql中相對頻率值? (我認爲訂購是主要話題) – Aris2World