我是SQL新手。我通過ETL導入了多個CSV文件。有一個日期列,有些日期格式爲mm-dd-yyyy,另外一些日期格式爲mm/dd/yyyy。我知道如何得到如下的日,月和年的個人部分。從varchar列的MySql中創建日期部分
#month
SELECT mid(My_Date,1,2) as Month_ FROM rl_transactional.mydb;
#day
SELECT mid(My_Date,4,2) as Day_ FROM rl_transactional.mydb;
#year
SELECT mid(My_Date,7,4) as Year_ FROM rl_transactional.mydb;
我想連接所有三個組件來獲取日期。當我運行查詢
select CAST(
(SELECT mid(My_Date,7,4) FROM rl_transactional.mydb) + '-'
+ (int, SELECT mid(My_Date,1,2) FROM rl_transactional.mydb) + '-'
+ (int, SELECT mid(My_Date,4,2) FROM rl_transactional.mydb)
AS DATETIME)
它給了我錯誤
Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'int, SELECT mid(My_Date,1,2) FROM rl_transactional.mydb) + '-' + (int, SELECT mi' at line 1
謝謝!
你切斷了你的錯誤信息,直到有趣的部分開始 –
H @juergend我剛更新了這個。謝謝 – Enthusiast