画像:http://i.stack.imgur.com/CyyHo.jpgタイムスタンプをSQLで日付に変換するには?
私は画像に示すようにデータセットを持っています。 created_dateカラムの値をdatetime
フォーマットとして使用したいと思います。どうやってやるの?
画像:http://i.stack.imgur.com/CyyHo.jpgタイムスタンプをSQLで日付に変換するには?
私は画像に示すようにデータセットを持っています。 created_dateカラムの値をdatetime
フォーマットとして使用したいと思います。どうやってやるの?
列の値はタイムスタンプのようではありません。 以下のスクリプトを使用して、値をdatetimeとして作成します。
SELECT credits,amount,city,
CONVERT(DATETIME,LEFT(created_date,8)
+' '+SUBSTRING(created_date,9,2)
+':'+SUBSTRING(created_date,11,2)
+':'+RIGHT(created_date,2)) Created_Date
FROM YourTable
私の問題を解決しました。ありがとう。 –
@Abhinavハッピーコーディング! –
「エポック」タイプのcreated_dateですか?そして、SQLデータベース内またはビジネスロジック内でdatetime形式を使用しようとしていますか?それがビジネスロジックにある場合は、使用する言語によって異なります。私は助けたいと思っていますが、ユースケースを完全には理解していません。私たちがあなたを助けるのに役立つより多くの情報を提供できるならば!
乾杯!
変換する時刻は、Unix timestamp
と呼ばれ、1970/01/01からの経過秒数を表します。この場合、DATA
関数を使用する必要があります。合計秒数が1970/01/01に加算されます。
は、SQLで、それは次のように行われます:s
秒とdateTimeInSecondsある
select DATEADD(s, dateTimeInSeconds, '19700101')
は日付のあなたの値です。 '19700101'
が出発点です。
デリミタなしの日付時刻ではありませんか? – scsimon
これはunixタイムスタンプのようには見えませんが、一部の文字を含まないdatetimeです(ちょうど数字が残っています)。 MySQLでは、 "リアル" タイムスタンプの使用を取得するには
:UNIX_TIMESTAMP()
MySQLでの日時の使用に "本物" のタイムスタンプを変換するには:FROM_UNIXTIME()
日時使用するように列を変換するには:
CONCAT(SUBSTR(created_date, 1, 4),
'-',
SUBSTR(created_date, 5, 2),
'-',
SUBSTR(created_date, 6, 2),
' ',
SUBSTR(created_date, 7, 2),
':',
SUBSTR(created_date, 11, 2),
':',
SUBSTR(created_date, 13, 2))
質問はMySQLサーバーではなくSQLサーバーとタグ付けされました – scsimon
これを試してみてください:
SELECT
create_date,
CONVERT(DATETIME, STUFF(STUFF(STUFF(x.create_date, 13, 0, ':'), 11, 0, ':'), 9, 0, ' ')) AS create_date_AsDT
FROM (SELECT '20160925151849') AS x(create_date)
注:基本的には、とhhとmmの間のセパレータをmmとssの間に挿入し、DTとTMの間に(スペース(1))を挿入します。したがって、
'20160925151849'
は'20160925 15:18:49'
になります。この最終値は有効なDT文字列であり、VARCHARからDATETIMEまで(SET LANGUAGE/DATEFORMAT
の設定とは独立して)問題なく変換できます。
Clarify画像がデータベース内のデータであるか、.NETデータセット/ DataTableのデータである場合。 created_dateという列に定義されているデータ型を指定できますか –