簡體   English   中英

如何在 SQL Server 中以 mm/dd/yyyy 格式獲取 DATE 列並將其導出為 CSV

[英]How to get DATE column in SQL Server in mm/dd/yyyy format and export it to CSV

我需要以 mm/dd/yyyy 格式將數據存儲在 SQL Server 的列中。 在我看來,我將使用DATE數據類型創建此列並使用CONVERT()將其轉換為 mm/dd/yyyy 格式

CREATE TABLE [dbo].TempDate 
(
    CompanyID nvarchar (512) NULL,
    VacDate date NULL,
    OffDate date NULL,
    Duration time NULL
)

SELECT CONVERT(varchar(10), VacDate, 10) AS "StartDate"
FROM [dbo].TempDate;

沒問題,我得到了 mm/dd/yyyy 格式的日期。 問題是我需要將此表導入為 CSV 格式,並且表中的日期為其標准 yyyy-mm-dd ,因此這就是在 CSV 中導入的內容。 我需要 CSV 中的日期為 mm/dd/yyyy 格式。 我嘗試使用CONVERTINSERT插入此表,但日期沒有轉換。 有沒有辦法直接在 mm/dd/yyyy 列中存儲日期? 就像在 Oracle 中一樣,它可以以某種格式定義列。

感謝您對此的任何想法。

雖然我認為您的重點應該放在獲取導出數據的查詢上,但如果您在數據庫中確實需要它,您可以添加一個顯示數據字符串表示的計算列,並將該列用於導出。

Alter table TempDate
Add VacDataComputed As CONVERT(varchar(10), VacDate, 10)

編輯:如前所述,您使用 10 作為樣式參數,這將呈現mm-dd-yyyy 如果您想要mm/dd/yyyy格式,請使用 101。您可以在此處查看更多樣式格式。

你的問題有點不清楚。 您的意思是 CSV 文件包含MM/dd/yyyy格式,並且您想將其作為日期時間值導入 SQL 表嗎? 那么12/31/201507/15/2014等值是否在 csv 數據文件中?

如果是這種情況,我認為您有兩個選擇。

  1. 將 datetime 列導入為字符串值,然后添加一個具有 datetime 數據類型的新列,並使用字符串操作轉換這些值。

  2. 或者,只需更改 CSV 輸入文件並在導入之前重新格式化 datetime 列,使用 Notepad++ CSV Lint 插件或 Python 之類的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM