0

したがって、「日付」という列に 19/09/2011 という値を持つ Excel ファイルがあります。Excel で列全体を選択 - セルの書式設定 - 場所: 英語 (英国) を選択し、"14/03/2011" のサンプル値を選択して、日が月の前に表示されるようにしました。

ここで、Visual Studio の単純なインポート パッケージを使用して、SQL Server にデータをインポートしました (ウィザードによって生成された 3 つのタスクを使用しました: テーブルの削除、SQL Server でのテーブル構造の作成、および実際のインポート)。

create table タスクでは、dates カラム タイプを date に指定しました。その後、結果をテストするために、Sql Server テーブルで日付を選択し、日付順で並べ替えました。

だから私はこれをすべてゴチャゴチャにしています(これは9月のデータだけであるはずなので、年の後には「09」しかないはずです):

2011-12-09
2011-11-09
2011-10-09
2011-09-30
2011-09-29
2011-09-28
2011-09-27
2011-09-26
2011-09-25
2011-09-24
2011-09-23
2011-09-22
2011-09-21
2011-09-20
2011-09-19
2011-09-18
2011-09-17
2011-09-16
2011-09-15
2011-09-14
2011-09-13
2011-09-09
2011-08-09
2011-07-09
2011-06-09
2011-05-09
2011-04-09
2011-03-09
2011-02-09
2011-01-09
4

2 に答える 2

0

使用機能CONVERT (DATETIME, @sDateOfBirth,101)

これは同じhttp://msdn.microsoft.com/en-us/library/ms187928.aspxのリンクです

于 2012-09-28T13:24:15.820 に答える
0

データを日時列に取得するには、次のことができます。

select cast(replace(date_col, '-', '') as datetime)

yyyymmdd の形式の文字列として20120928(特定の ISO 形式であるため)、形式の設定に関係なく、常に datetime にキャストできます。

特定の形式でテーブルからデータを取得するには、CASTまたはCONVERTまたは を使用できます

SET DATEFORMAT

例えば

SET DATEFORMAT dmy
GO

SELECT GETDATE()

EDIT : convert を使用すると、次のようになります。

SELECT CONVERT(VARCHAR(10), GETDATE(), 103)

戻り値:

2012/09/28

于 2012-09-28T13:15:49.513 に答える