2010-07-11 8 views
4

Je souhaite obtenir les informations météo pour un emplacement spécifique.Combinaison de deux requêtes dans Yahoo YQL

À l'heure actuelle, j'ai besoin d'appels pour les obtenir: Le premier a traduit ma position actuelle (lat/lon) à un WOEID, le deuxième appel récupère les informations météorologiques en utilisant ce WOEID.

Puis-je combiner ces 2 requêtes?

Le premier est: select * from yahoo.maps.findLocation où q = "LAT, LON" et gflags = "R"

Le second est: select * from weather.bylocation où emplacement = WOEID AND unit = 'c'

+0

Voir aussi ** [Comment puis-je combiner plusieurs requêtes de repos à l'aide YQL ?] (http://stackoverflow.com/questions/4917144/how-do-i-combine-multiple-rest-queries-using-yql) ** – hippietrail

Répondre

3

Vous pouvez utiliser sub-selects pour joindre des données entre différentes requêtes.

Dans votre cas, vous pouvez saisir le woeid de la table yahoo.maps.findLocation et insérer que dans une requête sur la table weather.bylocation comme suit:

select * 
from weather.bylocation 
where unit = 'c' and location in (
    select Results.woeid 
    from yahoo.maps.findLocation 
    where q="LAT, LON" and gflags="R" 
    limit 1 
) 
+0

Super, merci !! :-) – dmnkhhn

Questions connexes