используется, если оператор в запросе выбора не работает - PullRequest
0 голосов
/ 19 июня 2020

У меня есть список заказов в csv файле. Я хочу преобразовать данные.

вот мой запрос. Мне нужно добавить 2 новых столбца «набор подарочных коробок» и синий гриб ойзер ». Если имя в столбце V содержит набор подарочных коробок, то покажите 1, в противном случае оставьте поле пустым. Помогите мне исправить мой запрос. Также как я могу дать новое имя столбца для этих двух добавленных столбцов?

=query(orders!A2:AP134, "select Q, K, V, if(V="Gift Box Set              5lbs", "1", ""), if(V="Blue Oyster Mushroom   3lbs", "1", "")", true)

enter image description here

Ответы [ 2 ]

1 голос
/ 19 июня 2020

попробуйте:

=ARRAYFORMULA({Q2:Q, K2:K, 
 IF(V2:V="Gift Box Set              5lbs", "1", ), 
 IF(V2:V="Blue Oyster Mushroom   3lbs", "1", )})

или:

=ARRAYFORMULA(FILTER({Q2:Q, K2:K, 
 IF(V2:V="Gift Box Set              5lbs", "1", ), 
 IF(V2:V="Blue Oyster Mushroom   3lbs", "1", )}, 
 REGEXMATCH(V2:V, "Gift Box Set              5lbs|Blue Oyster Mushroom   3lbs"))

или:

=QUERY(INDEX(IF(REGEXMATCH(V2:V, "Gift Box Set              5lbs|Blue Oyster Mushroom   3lbs"), 
 {Q2:Q, K2:K, ROW(A2:A)^0}, )), 
 "where Col3=1", 0)
1 голос
/ 19 июня 2020

В синтаксисе QUERY отсутствует оператор if.

Попробуйте более простой подход без QUERY:

=ARRAYFORMULA(
  {
    Q2:Q134,
    K2:K134,
    V2:V134,
    IF(V2:V134 = "Gift Box Set              5lbs", 1, ""),
    IF(V2:V134 = "Blue Oyster Mushroom   3lbs", 1, "")
  }
)
...