2015-11-01 3 views
2

Можно ли связать значение из столбца со строкой в ​​Google Query Language? Я хотел бы сделать что-то вроде этого:Google Query Language Concatenation

=QUERY('Business Income'!A1:E, "select 'Q' + quarter(A), sum(B) where A is not null group by 'Q' + quarter(A) label quarter(A) 'Quarter', sum(B) 'Income'") 

Использование данных, выглядит следующим образом:

Date   Amount 
---------- ------- 
01/01/2015 XXXX.XX 
02/01/2015 XXXX.XX 
03/01/2015 XXXX.XX 
04/01/2015 XXXX.XX 
05/01/2015 XXXX.XX 
... 

И я бы ожидать, что это за выход:

Quarter Income 
------- --------- 
Q1   $XXXXX.XX 
Q2   $XXXXX.XX   
Q3   $XXXXX.XX 
Q4   $XXXXX.XX 
+0

Я думаю, что нет, но до/после выборки данных обычно описывают проблему лучше, чем формула, которая не работает. – pnuts

+0

Насколько мне известно, невозможно объединить поля со строками в Google Query language. Я думаю, что самым простым решением было бы создать дополнительный столбец, в котором вы вычисляете квартал ('= ceil (month (A)/3)') и добавляете «Q». Затем вы можете использовать этот столбец в запросе. – jvdh

+0

редактирование невозможно, но функция ceil не существует, ее на самом деле называется «потолок» – jvdh

ответ

3

Это не возможно объединить поля со строками на языке запросов Google.

Если вам понадобится конкатенированное поле для дальнейших манипуляций с данными, вы можете создать дополнительный столбец, где вы вычисляете четверть и добавляете Q (например, ="Q"&ceiling(month(A)/3)). Затем вы можете использовать этот столбец в запросе.

В противном случае, если вы просто хотите изменить визуальный дисплей, вы можете отформатировать номер как «Q» # (как предложено @pnuts).

+0

Спасибо за ответ! – LandonSchropp

0

Использовать формат.

select quarter(A), sum(B) 
where A is not null 
group by quarter(A) 
label quarter(A) 'Quarter', sum(B) 'Income' 
format quarter(A) 'Q#' 

Извините за опоздание ...