Запит Google SpreadSheet: чи можна видалити заголовок стовпця?


99

Я роблю цей запит у своїй електронній таблиці Google:

=QUERY(H4:L35;"select sum(L) where H='First Week'"; -1)

Але він повертає таблицю з заголовком "sum" та результатом під нею. Те, що я хочу, це лише результат! Як видалити заголовок? Можна я?


Це здається більш прямо вперед: stackoverflow.com/a/41797729/5316231
user19581

Відповіді:


189

Спробуйте це:

=QUERY(H4:L35,"select sum(L) where H='First Week' label sum(L) ''")

Сподіваюся, що це допомагає!


3
Я щойно перевірив це в одному зі своїх аркушів, і він видаляє заголовок із повернутих результатів; це слід позначити як правильну відповідь. :)
FooBar

1
Це чудово, і це працює, але хто-небудь може пояснити, чому в кінці потрібні дві одинарні лапки? Що це робить з точки зору синтаксису?
y-i_guy

2
Одинарна лапка замінює заголовок суми порожнім пробілом. Сподіваюся, що пояснює ваше запитання !!
KRR

2
Дякую за відповідь! Мені потрібно зробити те ж саме з більш ніж одним стовпцем, але я не можу цього досягти! Я очікував, що це спрацює: = ЗАПИТ (H4: L35, "виберіть суму (L), суму (H) де H = 'Сума мітки першого тижня (L)' 'сума мітки (H)' '")
Еміліо Ніколас

11
LABEL B 'Label1', C 'Label2'для кількох стовпців
sojim2

30

=QUERY(QUERY(A1:D, "SELECT *", 1), "SELECT * OFFSET 1", 0)

Зовнішній запит: "SELECT * OFFSET 1"виключає перший рядок (заголовок).

Внутрішній запит чітко вказує один рядок заголовків (через третій аргумент, що надається QUERY), тоді як зовнішній запит не вказує жодного.


3
Трохи пояснень?
J Fabian Meier

Чому QUERYнеобхідний другий ? Параметр "0" не опускає заголовки, тому ви можете використовувати його на першому QUERY, наприклад, так: QUERY('Form responses 3'!$A$2:$P$1017, "SELECT max(E),max(C), max(D) WHERE B='" & B14 & "' GROUP BY B LIMIT 1 ", 0)
Стівен М. Мортімер

3
Я вірю, OFFSET 1що другий запит видалить перший рядок повернутого набору даних, а не заголовки в першому рядку.
Стівен М. Мортімер

2
Ця відповідь може бути більш багатослівною, але вона також є більш надійною і може бути використана без копіювання рядків агрегації стовпців. Його навіть можна використовувати з pivot, що не працює з будь-якою іншою відповіддю тут.
7yl4r

1
Якщо я не помиляюся, це насправді не вирішує конкретну проблему, запропоновану оригінальним плакатом, тобто видалення заголовків, які автоматично генеруються QUERY при використанні функцій агрегування, таких як SUM. Під час використання SUM (або будь-якої іншої функції агрегації) QUERY автоматично створює рядок заголовка із зазначенням виконаної агрегації, наприклад, "сума". Він зробить це, навіть якщо ви встановите заголовки на 0 і навіть якщо застосуєте пункт OFFSET 1. Наступна формула все ще повертає заголовки. = ЗАПИТ (Аркуш1! A: B, "ВИБЕРІТЬ А, СУММУ (B) ГРУПУЙТЕ ЗА ЗМІСТ 1", 0) Прийнята відповідь вирішує цю проблему.
Dave Meindl,

0

У мене є QUERY, який повертає топ 3. Я не міг змусити це працювати, коли повертав кілька рядків. Я в кінцевому підсумку просто приховав рядок із формулою, і тепер відображаються лише відповіді.


0
=INDEX(QUERY(H4:L35;"select sum(L) where H='First Week'"; -1),2,1)

Це просто аналізує повернутий масив і вибирає 2-й запис, повернутий у першому стовпці.

Ви також можете зробити це за допомогою функції фільтра, яка менш інтенсивна для обчислень.

=SUM(FILTER(L4:L35, H4:H35 = "First Week"))

-3

Формат дивіться тут .

Приклад:

=QUERY(B4:C38,
   "SELECT C, sum(B) where C!='' group by C label C 'Member', sum(B) 'Sum'"
)

2
Наведений приклад не повертає результат без заголовків.
Рубен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.