# #sql #google-bigquery #timestampdiff
Вопрос:
Я очень новичок в SQL и работаю с большим набором данных (более 300 000 строк данных), и мне нужно рассчитать время, прошедшее между столбцом A (время начала) и столбцом B (время окончания) для каждой строки данных.
До сих пор мне удавалось выяснить, как найти время, прошедшее для данной строки, с помощью TIMESTAMP_DIFF, используя следующий синтаксис:
SELECT
TIMESTAMP "2020-06-06 12:04:48 UTC" as end_time,
TIMESTAMP "2020-06-06 08:09:09 UTC" as start_time,
TIMESTAMP_DIFF(TIMESTAMP "2020-06-06 12:04:48 UTC",
TIMESTAMP "2020-06-06 08:09:09 UTC", MINUTE) AS minutes
Поскольку было бы нереально сделать это для каждой строки данных, есть ли какой-либо способ применить это ко всем двум столбцам? Или есть какой-то другой метод вычитания значений в двух столбцах, содержащих данные временных меток?
Ответ №1:
SELECT TIMESTAMP_DIFF(end_time, start_time, MINUTE) AS minutes
FROM your_table