我们有一个带有VehicleName列的车辆表。我正在研究一个用户拥有多个相同VehicleName车辆的错误。我有此查询可帮助返回已多次使用的VehicleNames:

SELECT VehicleName,
 (
  SELECT count(VehicleName)
  FROM Vehicles as V2
  WHERE V1.VehicleName = V2.VehicleName
 )
FROM Vehicles as V1;


一方面,它很慢。这还不错,因为它没有投入生产。只是为了修复错误。其次,这将返回每个VehicleName,即使计数为1的那些,也就是我对此应用程序不感兴趣的VehicleName。我不记得如何命名子查询,因此无法添加where来限制它。

我不仅对如何命名子查询感兴趣,还对它们的更快解决方案感兴趣吗?

最佳答案

您是否要以某种丑陋的方式这样做?

SELECT VehicleName, COUNT(*) as TOTAL
FROM Vehicles
GROUP BY VehicleName
HAVING TOTAL > 1
ORDER BY TOTAL DESC;

关于mysql - SQL搜索具有相同“名称”列的条目?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11397193/

10-10 06:06