-2

如何创建一个检查其他表以查看是否有数据的 select 语句?

例如,假设我有一个包含 Cities 和 States 的 City 表,然后我有 3 个其他包含 Cities 和 States 的企业的表。那么我如何只获得有数据的城市呢?

例如,让我们以佛罗里达为例。如何获得佛罗里达州至少有 3 家企业的城市?

我想它会像

Select City C from Cities
where( Select (count) from FloridaBeds where City = C.City where (count) > 3
4

3 回答 3

0

要查找佛罗里达州有 1-3 个床位且堪萨斯州有不到 3 个床位的城市,请尝试:

select  c.City 
from    Cities c
join    FloridaBeds fb
on      fb.City = c.City
join    KansasBeds kb
on      kb.City = c.City
group by
        c.City
having  count(distinct fb.ID) between 1 and 3
        and count(distinct kb.ID) <3
于 2013-03-25T20:48:49.303 回答
0

要选择有数据的城市,请尝试以下操作:

SELECT DISTINCT City
FROM Cities RIGHT JOIN
FloridaBeds ON FloridaBeds.CityId = Cities.CityId
于 2013-03-25T21:05:47.133 回答
0

要获取佛罗里达州至少拥有 3 家企业的城市列表,您可以执行以下操作:

SELECT City
FROM Cities c
WHERE City IN
    (
    SELECT City
    FROM FloridaBeds
    GROUP BY City
    HAVING COUNT(City) >= 3
    )

城市名称似乎在您的 FloridaBeds 表中。如果这是真的,并且您没有备用键,例如 CityID,您可以这样做来获取城市名称列表。

SELECT City
FROM FloridaBeds
GROUP BY City
HAVING COUNT(City) >= 3
于 2013-03-25T20:59:57.313 回答