Чи є спосіб написати ці запити, щоб вони не потребували оновлення щоразу, коли додається чи видаляється стовпець?
Чи можна використовувати названі діапазони в запитах для вирішення цієї проблеми?
Так, ви можете використовувати названі діапазони замість вбудованих заголовків стовпців, але основна ідея така ж, як і інші відповіді на це, запропоновані інші подібні запитання на цьому веб-сайті: електронну таблицю слід встановити для створення динамічного рядка SQL .
Скажімо, це J
і G
відповідає названим діапазонам Grades
і Class
відповідно.
Наступний підхід працює лише тоді, коли стовпці знаходяться між стовпцями A і Z
CELL("address",Grades)
повернеться "$J:$J"
. Для отримання посилання на стовпчик використовуйте MID(CELL("address",Grades),2,1)
для отримання "J"
. Заключна формула така
= ЗАПИТАННЯ (B: J, "ВИБІРТЕ AVG (" &
MID (CELL ("адреса", оцінки), 2,1) &
") ГРУПА ПО" &
MID (CELL ("адреса", клас), 2,1))
Наступний підхід працює у всіх випадках
COLUMN(Grades)
поверне ціле число (число форми 1,2,3 і т.д.) Для спрощення формули для створення аргументу оператора SQL я пропоную змусити SQL використовувати посилання стовпців форми COL1, COL2 тощо, використовуючи масив позначення ( {B:J}
). Заключна формула така
= ЗАПИТАННЯ ({B: J}, "ВИБІРТЬ AVG (Col" & COLUMN (класи) -1 & ") ГРУПА ПО Col" & COLUMN (Клас) -1)
Демонстраційна таблиця
Список літератури
Використання масивів у Google Таблицях - Довідка редакторів Google Документів