SELECT
CONCAT(LastName,', ',FirstName)AS 'Name',</li>
City,
Country,
ShipCity AS 'Shipped City'
From
itstudies.employees
INNER JOIN
Orders
ON Employees.EmployeeID = Orders.EmployeeID
WHERE City = ShipCity;
此查询将输出显示为: -
(仅显示部分输出。)
Name City Country Shipped City
Smith, Jo York UK York
Avery, Paul Dallas USA Dallas
Avery, Paul Dallas USA Dallas
Kris, Jan York UK York
Kris, Jan York UK York
Hill, Ros Boston USA Boston
我需要取出重复项并更改查询以显示: -
Name City Country Shipped City
Smith, Jo York UK York
Avery, Paul Dallas USA Dallas
Kris, Jan York UK York
Hill, Ros Boston USA Boston
在此先感谢。
答案 0 :(得分:2)
你可以使用
SELECT DISTINCT ...
但通常最好是查看重复项的来源并使用
GROUP BY
在这种情况下,您加入ORDERS,从而获得员工所有订单的重复项。这次加入是否必要?你可以用
WHERE EXISTS (SELECT 1 FROM Orders WHERE Orders.EmployeeId=Employees.EmployeeId)
只获得订购的员工。
答案 1 :(得分:0)
简单:使用DISTINCT关键字。
您可以参考http://www.w3schools.com/sql/sql_distinct.asp了解更多详情;)