18

私のサンプルクエリは

SELECT D30.SPGD30_LAST_TOUCH_Y
from CSPGD30_TRACKING D30 

私の与えられた日付形式はのようなもの"2013-01-01 00:00:00.000"です。この日付形式を に変換する必要があります"mm/dd/yyyy hh:mm AM/PM"。それについて何か考えはありますか?

4

9 に答える 9

39

両方を提供する単一の形式はないと思います。を使用してこれを試してくださいConvertSql-デモ

declare @mydate datetime = getdate()
select convert(varchar(10),@mydate, 101) + right(convert(varchar(32),@mydate,100),8)

|           COLUMN_0 |
----------------------
| 02/22/2013  9:36AM |
于 2013-02-22T09:37:14.173 に答える
23

FORMAT() 関数は、バージョン 2012 以降で使用できます。アップグレードしたら、使用できます

select FORMAT(@date,'MM/dd/yyyy hh:mm:s tt')
于 2016-04-19T23:18:34.233 に答える
1

これを試して

 SELECT convert(varchar(20), GetDate(), 0);

AM/PMのみを抽出したい

substring(convert(varchar(30), GetDate(), 9), 25, 2);

フィドル

于 2013-02-22T09:45:13.067 に答える
1

これを使って

select CONVERT(VARCHAR(10), mydate, 101) + ' ' + RIGHT(CONVERT(VARCHAR, mydate, 100), 7) from tablename
于 2013-02-22T09:41:47.957 に答える
1

日付、時刻、日、月、年、時、分、秒、AM/PM を取得するには、次のシナリオを使用します。

:)

SELECT UpdatedOn ,
  CONVERT(varchar,UpdatedOn,100) DateTime,
  CONVERT(varchar,UpdatedOn,10) Date ,
  CONVERT(varchar,UpdatedOn,108) Time ,
  substring(CONVERT(varchar,UpdatedOn,106),1,2) Day,
  substring(CONVERT(varchar,UpdatedOn,106),4,3) CMonth,
  substring(CONVERT(varchar,UpdatedOn,105),4,2) NMonth,
  substring(CONVERT(varchar,UpdatedOn,106),8,4) Year,
  left(right(CONVERT(varchar,UpdatedOn,100),7),2) Hours_12,
  substring(CONVERT(varchar,UpdatedOn,108),1,2) Hours_24,
  substring(CONVERT(varchar,UpdatedOn,108),4,2) Minutes,
  substring(CONVERT(varchar,UpdatedOn,108),7,2) Second,
  right(CONVERT(varchar,UpdatedOn,100),2) AM_PM 
FROM dbo.DeviceAssignSim 
WHERE AssignSimId=55;
于 2014-10-10T11:26:31.327 に答える
0

次のように実行できます。

SELECT CONVERT(VARCHAR(10), GETDATE(), 101) AS [MM/DD/YYYY]

詳細については、次を参照してください。

日付形式

于 2013-02-22T09:37:06.317 に答える
0

メソッドを使用しconvertて値をフォーマットしdatetimeます。例:

select convert(varchar(20), D30.SPGD30_LAST_TOUCH_Y, 101)

3 番目のパラメーターは、形式を決定します。使用可能な形式については、キャストと変換のドキュメントを参照してください。

于 2013-02-22T09:38:39.410 に答える