为了账号安全,请及时绑定邮箱和手机立即绑定

将 SUM(tbl_column) 与 $print 一起使用时未定义的常量

将 SUM(tbl_column) 与 $print 一起使用时未定义的常量

PHP
饮歌长啸 2021-06-02 09:07:26
我正在使用SUM参数查询数据库以统计数据库表中的一列。例如,在不使用SUM参数的情况下,我得到以下结果:UserID | Name   | Email            | points-------+--------+------------------+-------1      | name 1 | email1@email.com | 51      | name 1 | email1@email.com | 81      | name 1 | email1@email.com | 22      | name 2 | email2@email.com | 82      | name 2 | email2@email.com | 83      | name 3 | email3@email.com | 34      | name 4 | email4@email.com | 9上面代码中使用的SQL语句:SELECT * FROM db_tbl ORDER BY points DESC我想要实现的是:消除表中的重复用户。对点列进行计数,并改为向用户显示组合点。例子UserID | Name   | Email            | points-------+--------+------------------+-------1      | name 1 | email1@email.com | 152      | name 2 | email2@email.com | 163      | name 3 | email3@email.com | 34      | name 4 | email4@email.com | 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


查看完整回答
反对 回复 2021-06-04
  • 3 回答
  • 0 关注
  • 164 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号