CONCAT 创建 DATE 列以添加 DATETIME 列

CONCAT created DATE columns to add DATETIME columns

平台:BigQuery

我从两个单独的表中创建了两个单独的 MIN 和 MAX DATE 列 (YYYY-MM-DD)。我现在想通过以 HH:MM:SS 格式向它们添加时间来在每个列旁边添加一个附加列,以便为开始日期列和结束日期列创建一个 DATETIME 列。没有时间,这只是出于约定目的,所以时间将是:00:00:00.

我试过将“CONCAT(CAST”作为 DATETIME,但它似乎对我不起作用。 我没有在下面添加我的尝试,因为我不确定它应该在何时、如何或何处进行。

**

下面是我当前的查询,没有附加列:

**

distinct(table1.person_id),
LEAST(MIN(table1.AssessmentDate),MIN(table2.ContactDate)) visit_start_date,
GREATEST(MAX(table1.AssessmentDate),MAX(table2.ContactDate)) visit_end_date,
FROM `Assessmentsdataset` Assmnt
inner join Contactsdataset` Contacts
ON (
Assmnt.person_id = Contacts.person_id
)
inner join `MASTER.person` mstr_person 
ON (
Assmnt.person_id = MASTER_person.person_id    
)
group BY Assmnt.person_id```

**

 - Desired result would be

**

|person_id|visit_start_date|visit_start_datetime|visit_end_date|visit_end_datetime|
|:--------||:--------------||:------------------||:------------|:-----------------|
|   1234  |   YYYY-MM-DD   |YYYY-MM-DDT00:00:00| YYYY-MMMM-DD |YYYY-MM-DDT00:00:00|   

如果您希望他们 datetimes,只需 cast() 他们:

CAST(LEAST(MIN(table1.AssessmentDate), MIN(table2.ContactDate)) AS DATETIME)

您也可以使用 DATETIME():

DATETIME(LEAST(MIN(table1.AssessmentDate), MIN(table2.ContactDate)))