1
我建立在PHP-SQL中的小遊戲,我有高分太一些查詢有錯誤
高分應該是爲了通過分數,然後通過用戶的時間內完成測試。
當用戶完成測試,並提交自己的分數和時間 - 我運行此查詢,並通過發現的
SELECT `rate`
FROM quiz_1_highscore
WHERE CASE `score` <= ?
WHEN true THEN
CASE `timer` >= ?
WHEN true THEN true
WHEN false THEN
CASE `score` != ?
WHEN true THEN true
END
END
END
ORDER BY `score` DESC, `timer` ASC
LIMIT 1
率在第一和第三個參數是比分,而在第二個是時間(秒)
我有一個記錄 -
rate score time
25 10 65
26 10 74
27 10 74
28 10 78
我打10分和70秒的紀錄 - 所以我應該被評爲26
但查詢返回27 - 爲什麼?
我查無極限,它的秩序 - 27 26 28 ...
我怎樣才能解決呢?
您使用的RDBMS來訂購吧? –