SQL语句中的SQL语句

时间:2017-12-04 22:37:50

标签: mysql sql

我希望这句话能够返回有两个以上站点的系统,我已经做到了这一点,但我不知道下一步该做什么。所有这一切都会返回每个系统,其区域ID小于1100001.我至少是正确的想法吗?

SELECT DISTINCT mapSolarSystems.regionID,solarSystemID,solarSystemName,x,z,security 
FROM mapSolarSystems 
WHERE mapSolarSystems.regionID <11000001  
AND 
2 < (SELECT COUNT(*) FROM stations,mapSolarSystems
 WHERE mapSolarSystems.solarSystemID=stations.systemid)

2 个答案:

答案 0 :(得分:0)

看看这是否有效:

SELECT DISTINCT mapSolarSystems.regionID,solarSystemID,solarSystemName,x,z,security 
FROM mapSolarSystems m
join stations s on m.solarSystemID = s.systemid
WHERE mapSolarSystems.regionID <11000001  
AND select COUNT(*) FROM stations >2

或者那样:

SELECT DISTINCT 
mapSolarSystems.regionID,solarSystemID,solarSystemName,x,z,security 
FROM mapSolarSystems m
join (select sistemId ,count(systemid) from station group by sistemId having 
      count(sistemId) > 2) X on m.solarSystemID = X.systemid
WHERE mapSolarSystems.regionID <11000001  

答案 1 :(得分:0)

SELECT DISTINCT m.regionID,solarSystemID,solarSystemName,x,z,security FROM mapSolarSystems m m.solarSystemID = s.systemid中的m个连接站WHERE m.regionID&lt; 11000001 AND(SELECT COUNT(*)FROM stations)&gt ; 2