-1

Я разрабатываю приложение, которое позволяет пользователю выбирать регион на карте. При щелчке по карте я храню состояние и страну этого региона в двух отдельных массивах. Я хочу применить запрос в таблице fusion, который дает мне данные только для выбранных состояний и стран.Google fusion table where where

Я пробовал следующие два отдельных запроса для выбора страны и штата.

var selectState = { 
        select: 'kml_4326', 
        from: 420419, 
        where: "'name_1' IN ('Montana','Nevada')" 
       }; 

var selectCountry = { 
        select: 'kml_4326', 
        from: 420419, 
        where: "'name_0' IN ('Canada','Russia')" 
       }; 

Оба вопроса отлично работают, когда я применяю отдельно к слою таблицы слияния. Я хочу объединить эти два запроса. Я попробовал следующее для слияния, но не работал:

var selectStateAndCountry = { 
         select: 'kml_4326', 
         from: 420419, 
         where: "'name_0' IN ('Canada','Russia') AND 'name_1' IN ('Montana','Nevada')" 
        }; 

Пожалуйста, предложите мне решение. Благодарю.

ответ

1

В запросе нет ничего плохого, но ваш запрос не соответствует ни одной строке (ни Монтана, ни Невада не расположены в Канаде или России).

Этот запрос будет возвращать результаты:

{ 
    select: 'kml_4326', 
    from: 420419, 
    where: "'name_0' IN ('United States of America','Canada') " + 
      " AND 'name_1' IN ('Montana','Nevada')" 
} 
+0

Спасибо за ответ Dr.Molle. Я хочу запрос, который выберет некоторые государства и некоторую страну. Как и в предыдущем запросе, я хочу, чтобы выбранные США и Канада были выбраны, а некоторые страны из других стран. – Programmer

+0

Это невозможно, для этого потребовалось бы 'OR' -clause, которое в настоящее время не поддерживается в FusionTable-SQL. Что вы можете сделать: используйте 2 отдельных слоя, 1 для стран и 1 для штатов –

+0

Можете ли вы предложить любое другое решение/метод для этого? – Programmer