我正在嘗試通過訂購最匹配的記錄來改進我的搜索功能。給予mysql權重搜索結果
我有以下的mysql表。
SurveyResponses
+--------+-------------+------------------+
| sID | Title | Description |
+--------+-------------+------------------+
| 1 | Set 1 | Some txt here |
| 2 | Set 2 | Other text here |
+--------+-------------+------------------+
答案:
+------+---------+------------+---------+
| aID | Parent | Question | Answer |
+------+---------+------------+---------+
| 1 | 1 | 1 | yes |
| 2 | 1 | 2 | yes |
| 3 | 1 | 3 | yes |
| 4 | 2 | 1 | yes |
| 5 | 2 | 2 | no |
| 6 | 2 | 3 | no |
+------+---------+------------+---------+
我想獲得的,在答案表進行匹配是正確的問題順序從SurveyResponses表,並命令他們所有的記錄。正確的答案是:
Q1 = yes
Q2 = no
Q3 = no
所以在此基礎上,查詢應該在結果頂部返回集2,因爲答案是在答案表這個問題正確的,而Q2和Q3分別爲錯在組1
我想我需要某種形式的評分系統,這樣我就可以這樣做
IF q1 = yes THEN score = score + 1
很顯然,我可以做到這一點在PHP中,但不知道在MySQL使用什麼方法。
對這個問題的答案將不勝感激,但即使是最好的方法提示或鏈接將不勝感激。
「正確的答案如下:」這不是你想要存儲在數據庫中的東西! – Strawberry
我不關注。數據存儲在數據庫中 - 我只想知道如何訂購它!你是否建議增加一列來簡單地保留'分數'? –
「我不遵循。」你和我都:-) – Strawberry