标签: hadoop hive impala
我有一个类型为String的日期字段,格式为:
03/11/2001
我想加入另一个列,它采用不同的String格式:
1855-05-25 12:00:00.0
如何在hive中有效地连接两列,忽略第二列的时间部分?
我的查询如下所示:
LEFT JOIN tabel1 t1 ON table2.Date=t1.Date
答案 0 :(得分:3)
由于您有两种不同格式的日期值,因此您需要使用两者的日期函数,并在连接查询中将其转换为类似日期类型的格式。它会是这样的:
LEFT JOIN tabel1 t1 ON unix_timestamp(table2.Date, 'yyyy-MM-dd HH:mm:ss.S')table2.Date=unix_timestamp(t1.Date,'MM/dd/yyyy')
您可以在构建日期函数中引用this和this作为配置单元。
答案 1 :(得分:-1)
将日期转换为相同的格式 to_date(table2.date)= to_date(t1.date)