将一个MySQL表的ID名称连接到另一个MySQL表的ID
我有一个由ID标识的客户机详细信息表,如下所示:将一个MySQL表的ID名称连接到另一个MySQL表的ID,mysql,inner-join,Mysql,Inner Join,我有一个由ID标识的客户机详细信息表,如下所示: ID (the clientcode), Name, Details 我想引用另一个包含销售信息的表中的ID,并在查询中提取客户的名称 仅获取ID(clientcode)的原始查询字符串如下: 我还想获取clientcode引用的客户机的名称 我尝试了一些左连接,但无法使查询正常工作。这应该可以 SELECT c.ID, c.name, SUM(i.sales) FROM inventory i JOIN clients c ON c.ID
ID (the clientcode), Name, Details
我想引用另一个包含销售信息的表中的ID,并在查询中提取客户的名称
仅获取ID(clientcode)的原始查询字符串如下:
我还想获取clientcode引用的客户机的名称
我尝试了一些左连接,但无法使查询正常工作。这应该可以
SELECT c.ID, c.name, SUM(i.sales)
FROM inventory i
JOIN clients c ON c.ID = i.clientcode
WHERE i.manufacturer='1'
GROUP BY c.ID, ORDER BY SUM(i.sales) DESC
实现这一点的一个简单查询是:
SELECT i.clientcode, d.name, SUM(i.sales) FROM inventory i, details d
WHERE i.manufacturer='1'
AND d.clientcode = i.clientcode
GROUP BY i.clientcode ORDER BY SUM(i.sales) DESC
来,试试这个
SELECT inventory.clientcode,
SUM(inventory.sales),
clientdetails.Name
FROM inventory
INNER JOIN clientdetails
ON inventory.clientcode = clientdetails.clientcode
WHERE inventory.manufacturer='1'
GROUP BY inventory.clientcode, clientdetails.Name
ORDER BY SUM(inventory.sales) DESC
让我们看看什么不起作用
SELECT i.clientcode, d.name, SUM(i.sales) FROM inventory i, details d
WHERE i.manufacturer='1'
AND d.clientcode = i.clientcode
GROUP BY i.clientcode ORDER BY SUM(i.sales) DESC
SELECT inventory.clientcode,
SUM(inventory.sales),
clientdetails.Name
FROM inventory
INNER JOIN clientdetails
ON inventory.clientcode = clientdetails.clientcode
WHERE inventory.manufacturer='1'
GROUP BY inventory.clientcode, clientdetails.Name
ORDER BY SUM(inventory.sales) DESC
SELECT a.clientcode,
SUM(a.sales),
b.Name
FROM inventory a
INNER JOIN clientdetails b
ON a.clientcode = b.clientcode
WHERE a.manufacturer='1'
GROUP BY a.clientcode, b.Name
ORDER BY SUM(a.sales) DESC