2014-09-05 110 views
-1

我確實有這個樣本值"12/01/2013"這是一個字符串。如何將日期轉換爲SQL中的不同格式?

如何將其直接轉換爲SQL語句?格式必須爲INT,如下所示:20131201

因此從"12/01/2013"20131201

+2

哪個數據庫? – Vland 2014-09-05 07:10:35

+0

數據庫是Postgre – Ryan 2014-09-05 07:37:42

回答

0

這一點也適用SQL服務器

SELECT CONVERT(INT, SUBSTRING('12/01/2013',7,4) + 
        SUBSTRING('12/01/2013',0,3) + 
        SUBSTRING('12/01/2013',4,2)) AS dateInt 

結果

20131201 
0

在MySQL測試:

SELECT CAST(CONCAT(SUBSTR("12/01/2013",7,4), SUBSTR("12/01/2013",4,2),SUBSTR("12/01/2013",1,2)) AS UNSIGNED INTEGER); 
-1

可以使用CONVERT和REPLACE函數像下面這樣做。

DECLARE @dateValue date 
SET @dateValue = CONVERT(DATETIME,'12/01/2013',102) 
SELECT REPLACE (CONVERT(nvarchar,@dateValue) , '-' , '') 

Rsult將

20131201 
0

在PostgreSQL你有to_date功能,它接受一個日期字符串和格式字符串和返回日期。

,因此您可以:

postgres=# select to_date('12/01/2015', 'mm/dd/yyyy'); 
    to_date 
------------ 
2015-12-01 
(1 row) 

postgres=# select to_date('12012015', 'mmddyyyy'); 
    to_date 
------------ 
2015-12-01 
(1 row)