【问题标题】:MySQL single row with multiple recordsMySQL单行多条记录
【发布时间】:2011-06-08 01:03:30
【问题描述】:
我有一张表,其中包含多行定义特定度假村的“设施”。如果有包含我定义的任何“amenOptionID”的行,我需要返回resortID。我的问题出现在我想查看度假村是否有两个或更多设施的地方。例如:
我想返回同时具有 amenOptionID 1 和 4 的resortID。我也不想要重复的resortID。有关表结构,请参阅图像。提前感谢您的帮助。
【问题讨论】:
标签:
mysql
row
records
multiple-records
【解决方案1】:
SELECT `resortID`
WHERE `amenOptionID`
IN (1, 4)
GROUP BY `resortID`
HAVING COUNT(*) = 2
【解决方案2】:
我认为这会奏效...
SELECT resortID, COUNT(*) AS theCount FROM myTable WHERE amenOptionID IN(1,4) GROUP BY resortId HAVING theCount=2;