我正在使用SUM參數查詢數據庫以統計數據庫表中的一列。例如,在不使用SUM參數的情況下,我得到以下結果:UserID | Name | Email | points-------+--------+------------------+-------1 | name 1 | [email protected] | 51 | name 1 | [email protected] | 81 | name 1 | [email protected] | 22 | name 2 | [email protected] | 82 | name 2 | [email protected] | 83 | name 3 | [email protected] | 34 | name 4 | [email protected] | 9上面代碼中使用的SQL語句:SELECT * FROM db_tbl ORDER BY points DESC我想要實現的是:消除表中的重復用戶。對點列進行計數,并改為向用戶顯示組合點。例子UserID | Name | Email | points-------+--------+------------------+-------1 | name 1 | [email protected] | 152 | name 2 | [email protected] | 163 | name 3 | [email protected] | 34 | name 4 | [email protected] | 9正在測試的 SQL 語句:SELECT user_id, name, email, SUM(points) FROM db_tbl ORDER BY points DESC我遇到的問題是當我將 SQL 語句更改為 use 時SUM,它會生成一個警告:在第 27 行使用未定義的常量點 - 假定為“點”(這將在未來版本的 PHP 中引發錯誤)此查詢示例還將 points int 替換為單詞points。我還在學習PHP,并在下面發布了完整的代碼以供參考。function ctlTopUsers() {global $wpdb;$result = $wpdb->get_results ( "SELECT user_id, name, email, SUM(points) FROM db_tbl order by points DESC" ); foreach ( $result as $print ) { echo '<table border="1">'; echo '<tr>'; echo '<th>Name</th>'; echo '<th>Email</th>'; echo '<th>Points</th>'; echo '</tr>'; echo '<tr>'; echo '<td>' . $print->name.'</td>'; echo '<td>' . $print->email.'</td>'; echo '<td>' . $print->points.'</td>'; echo '</tr>'; echo '</table>'; }} 錯誤與第 27 行有關,該行將是點的回波。
3 回答

牧羊人nacy
TA貢獻1862條經驗 獲得超7個贊
您可以使用此查詢
SELECT `UserID`, `Name`, `Email`,SUM(`points`) As total
FROM `data` GROUP BY `UserID` ORDER BY SUM(`points`) DESC
- 3 回答
- 0 關注
- 177 瀏覽
添加回答
舉報
0/150
提交
取消