首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌套查询语法改进

问嵌套查询语法改进
EN

Stack Overflow用户
提问于 2012-02-03 17:50:43
回答 3查看 102关注 0票数 2

使用1个查询而不是2个查询的正确语法是什么?

代码语言:javascript
复制
$result = mysql_query(SELECT * FROM users);

while($row = mysql_fetch_array($result)){
    $result = mysql_query(SELECT SUM(balance) FROM users_account WHERE uid=$row[id]);
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-02-03 17:56:19

这将返回user_account表中包含用户信息的所有记录:-

代码语言:javascript
复制
    SELECT SUM(ua.balance),u.*,ua.* FROM users_account ua
    left join users u on ua.users_account=u.id
    GROUP BY u.id
票数 0
EN

Stack Overflow用户

发布于 2012-02-03 17:55:31

您应该对表和group by user表进行内部联接。您可以在SELECT子句中添加更多列,请记住将相同的列也添加到GROUP BY子句以获得标准的SQL语句。

代码语言:javascript
复制
$query = " SELECT u.uid, SUM(a.balance) 
           FROM users_account a
           INNER JOIN users  u
           ON u.uid = a.uid
           GROUP BY u.uid";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)){
     ...

如果需要,排列$query连接字符串。

票数 1
EN

Stack Overflow用户

发布于 2012-02-03 17:54:38

代码语言:javascript
复制
$result = mysql_query(SELECT a.*, b.SUM(balance) AS user_balance FROM users a, users_account b WHERE uid=$row[id]);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9126671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档