我有一個充滿統計數據庫。建設獎勵大廳mysql查詢?
我知道如何做這樣的事情來獲得前10名賬戶有一定的統計...
SELECT money FROM accounts ORDER BY money DESC LIMIT 10
這將顯示前10個賬戶的錢的統計數據。說如果我有10個不同的統計數據,有沒有一種查詢方法可以根據所有統計數據找出前十名球員的位置?或者它會涉及很多的查詢,然後用我選擇的語言來顯示它?
感謝
我有一個充滿統計數據庫。建設獎勵大廳mysql查詢?
我知道如何做這樣的事情來獲得前10名賬戶有一定的統計...
SELECT money FROM accounts ORDER BY money DESC LIMIT 10
這將顯示前10個賬戶的錢的統計數據。說如果我有10個不同的統計數據,有沒有一種查詢方法可以根據所有統計數據找出前十名球員的位置?或者它會涉及很多的查詢,然後用我選擇的語言來顯示它?
感謝
你必須拿出一個順序來排序他們,你可以多個排序添加到查詢,但它可能不會給結果你想
SELECT money FROM accounts ORDER BY money DESC, points DESC LIMIT 10
然而,你可以想出一些評分系統,但這意味着很多疑問。至少,根據統計數據,這將是一個類似於你已經寫過的數據。類似這樣的:
$result = mysql_query('SELECT money, account_id FROM accounts ORDER BY money DESC LIMIT 100');
$accounts = array();
$points = mysql_num_rows($accounts);
while ($row = mysql_fetch_assoc($result)){
$accounts[$row['account_id']] += $points;
$points--;
}
並且對每個得分類型重複這一點。之後,根據點數排列數組,您將知道頂部列表。
是的,我想過這個,只是想知道是否可以用一個查詢 – cgweb87 2012-01-03 09:54:51
您可以訂購一個或多個字段。您也可以計算字段。
SELECT money FROM accounts ORDER BY money, balance, age, SUM(money + balance) DESC LIMIT 10
請通過'查詢,將制定出的十強選手基於所有statistics'位置更具體的 - 你的意思,你要評估等級之外的誰是每個頂部統計結合?就像如果帳戶1是10/10的統計數據的頂部,他是在上面,其次是誰是9/10數據的頂部,然後是8/10,等等......? – Nonym 2012-01-03 08:32:22
是的,我想根據所有數據找到前十名。 – cgweb87 2012-01-03 09:53:51