Php Mysql在一个数据库中加入两个查询
我有两个查询:第一个查询将检索延迟最大的5个用户,我正在while循环中运行第二个查询,用于检索用户的用户名和名称。 这就是它的样子:Php Mysql在一个数据库中加入两个查询,php,mysql,sql,join,subquery,Php,Mysql,Sql,Join,Subquery,我有两个查询:第一个查询将检索延迟最大的5个用户,我正在while循环中运行第二个查询,用于检索用户的用户名和名称。 这就是它的样子: select UserID, SUM(delay) as 'TOTdelay' FROM logboek WHERE date >= x AND date <= y GROUP BY UserID ORDER BY TOTdelay DESC LIMIT 5 while ($stmt->fetch()) { select Username
select UserID, SUM(delay) as 'TOTdelay' FROM logboek WHERE date >= x AND date <= y GROUP BY UserID ORDER BY TOTdelay DESC LIMIT 5
while ($stmt->fetch()) {
select Username, Name FROM users WHERE ID = $UserID LIMIT 1;
echo $Username.' on the x place with a total delay of '.$TOTdelay;
}
如何将这2个查询合并为1,这样就不必在while循环中运行查询
谢谢你帮助我 您可以使用:
试一试
你能帮我做一个梦吗?
SELECT
Username,
Name,
SUM(delay) AS `TOTdelay`
FROM
logboek
INNER JOIN
users ON UserId = users.ID
WHERE
date BETWEEN 20130101 AND CURDATE()
GROUP BY
UserID
ORDER BY
TOTdelay DESC
LIMIT 5
select logboek.UserID, SUM(logboek.delay) as 'TOTdelay', users.Username, users.Name FROM logboek
LEFT JOIN users on (users.id = logboek.UserID)
WHERE logboek.date >= x AND logboek.date <= y GROUP BY logboek.UserID ORDER BY TOTdelay DESC LIMIT 5