Вот пример использования вашей отметки времени. Я столкнулся с подобными проблемами и придумал что-то вроде этого.
SELECT
CONCAT(year,"-",month,"-",day," ",clock) as bq_formatted_date,
FROM
(
SELECT
IF(LENGTH(REGEXP_EXTRACT(date_orig, r'([^\/]+)\/')) = 1, CONCAT("0",REGEXP_EXTRACT(date_orig, r'([^\/]+)\/')), REGEXP_EXTRACT(date_orig, r'([^\/]+)\/')) as month,
IF(LENGTH(REGEXP_EXTRACT(date_orig, r'.*?\/([^\/]+)\/')) = 1, CONCAT("0",REGEXP_EXTRACT(date_orig, r'.*?\/([^\/]+)\/')),REGEXP_EXTRACT(date_orig, r'.*?\/([^\/]+)\/')) as day,
REGEXP_EXTRACT(date_orig, r'.*\/([0-9]+)') as year,
REGEXP_EXTRACT(date_orig, r'([0-9]+:[0-9]+:[0-9]+)') as clock
FROM (SELECT "8/1/2014 0:03:00" as date_orig)
)
Который дает вам это как результат 2014-08-01 0:03:00
. Это регулярное выражение будет вводить одиночные цифры месяца или дни с начальным нулем.
но я должен указать схему перед импортом, как я могу запустить запрос перед импортом таблицы? – Balazs
Импортировать в виде строки, а затем использовать этот запрос для его последующего преобразования. –