2014-04-15 86 views
2

我想將整列轉換爲日期格式yyyymmdd,我不想要當前日期,因此我無法使用getdate()命令,列中已經有數據,我只需要正確的命令將整列轉換爲yyyymmdd格式。我想將整列轉換爲日期格式yyyymmdd,我不想要當前日期

我使用的列是FIELD_034,表是Sur_CompassAuto1_1_7_fetch

我正在使用SQL Server。

謝謝

+2

該字段定義爲什麼類型? –

+0

檢查我的編輯,這應該適用於'日期時間'和'Varchar' – paqogomez

回答

1

一個常見的誤解是,datetime有一個格式。如果您將日期存儲爲日期時間,則可以以任何格式輸出它。

聽起來好像您可能將您的值存儲爲Varchar。你會好起來的VARCHAR日期轉換爲日期時間,那麼你可以做任何你想要與他們

也就是說,如果你有FIELD_034DateTime,那麼它的那麼容易,因爲

SELECT CONVERT(VARCHAR(10), FIELD_034, 112) 
from Sur_CompassAuto1_1_7_fetch 

如果該字段是一個類似的varchar:

SELECT CONVERT(datetime, FIELD_034, 112) 
from Sur_CompassAuto1_1_7_fetch 

這一個的困難是如果你有你的價值在不同或非標準的格式。然後它將需要一些清理,以使查詢工作。

編輯:作爲@AArnold說的111 Date formats are subtle.

+0

謝謝老大..我會嘗試它 – user3537234

2

我與paqogomez的反應完全同意,但不是111日期樣式,更好地利用112 的聲明

輸出,其112代替
SELECT CONVERT(VARCHAR(10), FIELD_034, 111) 

將導致yyyy/MM/dd。凡爲,

SELECT CONVERT(VARCHAR(10), FIELD_034, 112) 

將返回年月日,這是他所需要的東西。

+0

它簡單的事情,讓你。優秀的捕獲。 +1。我會編輯我的答案。 – paqogomez

+0

謝謝你們,這些信息非常有用。 – user3537234

相關問題