我正在尝试通过Yahoo YQL获取天气数据,下面是查询,我的问题是如何查询这些只在美国找到的位置?我只想搜索美国,因为当搜索例如加州丹维尔时,它会显示2个结果,1个来自美国,1个来自加拿大。有什么建议吗?谢谢!
SELECT
*
FROM
weather.forecast
WHERE
woeid
IN
(
SELECT
woeid
FROM
geo.places
WHERE
text
IN("Danville, CA","Sunnyvale, CA")
)
AND
u="f"发布于 2017-04-09 00:28:17
看起来我发的太快了。我有两种方法可以解决这个问题。
第一个解决方案:
我将Country = "United States“添加到查询的错误部分。我将它添加到AND u="f“之后,当我将它添加到子查询中时,它可以工作,如下所示:
SELECT woeid FROM geo.places WHERE text IN("Danville, CA","Sunnyvale, CA") AND country = "United States"第二种解决方案:
这是我的解决方案,因为它解决了我的问题,如果碰巧我需要在美国以外的地方搜索,而且更容易实现。我不是按City,State搜索,而是简单地将国家代码添加到查询中,如下所示:
SELECT woeid FROM geo.places WHERE text IN("Danville, CA US","Sunnyvale, CA US")这样,如果我需要在不同的国家进行搜索,我可以简单地编辑单个文本搜索,而不是将所有搜索绑定到美国。
https://stackoverflow.com/questions/43297434
复制相似问题