SQL - 使用相同的值查找不同的名称

时间:2012-01-05 13:06:29

标签: sql sqlplus

例如,

在'Car'牌桌上你有'法拉利'出现4次。而'兰博基尼'和'福特'出现了4次。

如何通过SQL制作一个命令,显示“Car”中与法拉利具有相同价值/数量的所有车辆?

感谢任何帮助。

由于

4 个答案:

答案 0 :(得分:4)

SELECT
    Name
FROM
    Cars
GROUP BY
    Name
HAVING
    Count(Name) = (
    SELECT
        Count(*)
    FROM
        Cars
    WHERE
        Name = "Ferrari"
    )

答案 1 :(得分:4)

这个怎么样

with a as
(
select make, count(*) tot from car
group by make
)
select * from a where a.tot = (select tot from a where make='Ferrari');

答案 2 :(得分:0)

select brand from car
group by brand
having count(*) = (select count(*) from car where brand = 'Ferrari')
好吧,太慢......那是老板进来的: - )

答案 3 :(得分:-1)

SELECT COUNT(make) FROM Car WHERE make = 'Ferrari'