QUERY с критерием AND не возвращает ожидаемых результатов - PullRequest
1 голос
/ 09 мая 2020

У меня есть QUERY, который, кажется, относится к AND больше как OR. Другими словами, когда значение Col11=TRUE и значение Col12=7, результаты отображаются, как если бы Col12=8. Я что-то упускаю? Я пробовал заключать в кавычки переменные и скобки вокруг двух критериев. Добавляем интервал вокруг =. Что еще есть?

Col11 - это только TRUE или FALSE значения, а Col12 - это только числовые c значения от 1 до 8.

=QUERY({$A$3:$AJ},"SELECT Col3,Col10 where Col11=TRUE and Col12=8",0)

Вот a ссылка на мою таблицу . Он похоронен в более крупной формуле в AK2

AK6 является хорошим примером. Он показывает U U. Должно отображаться только U. Считается, что X6 имеет значение 8, хотя на самом деле это 7.

1 Ответ

1 голос
/ 10 мая 2020

Думаю, я понял, что происходит. Вы получаете две буквы U, потому что я думаю, что ваш внутренний массив возвращает несколько строк для Col3='R2-D2', одну строку, где Col23=TRUE и Col24=8, а затем другую строку, где Col27=TRUE и Col28=8.

Я не уверен, но я думаю, что значения в AK не относятся конкретно к значениям в этой строке c, а вместо этого относятся к массиву, запрашиваемому по всем вашим строкам данных. Так как внешний массив ArrayFormula работает вниз по столбцу, внутренний массив (с несколькими VLOOKUP / ArrayFormula / Queries) по-прежнему является большим подмножеством всего диапазона данных. Это при условии, что я правильно понял вашу сложную формулу - приношу свои извинения, если я что-то не понял.

Я добавил тестовый лист Героев на ваш лист. В нем всего десять строк, все данные R2-D2 из вкладки «Герои». Столбцы свернуты для наглядности. Посмотрите, что произойдет, если вы выделите все данные строки под Row3 и нажмете delete, а затем UNDO. Две буквы «U» в столбце AK становятся одним целым, потому что теперь есть только одна строка данных для запроса. Ваша исходная формула находится в AK2.

Сообщите мне, помогло ли это.

...