ti-enxame.com

Como exibir a data como mm / dd / aaaa hh: mm Am / PM usando o sql server 2008 r2?

Minha consulta de amostra é

SELECT D30.SPGD30_LAST_TOUCH_Y
from CSPGD30_TRACKING D30 

Meu formato de data especificado é como "2013-01-01 00:00:00.000". Preciso converter esse formato de data para "mm/dd/yyyy hh:mm AM/PM". Você tem alguma idéia sobre isso?

15
Adalarasan_Serangulam

Eu acho que não existe um formato único para dar a ambos. Tente isso usando Convert; Sql-Demo

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

|           COLUMN_0 |
----------------------
| 02/22/2013  9:36AM |
27
Kaf

A função FORMAT () está disponível a partir da versão 2012. Depois de atualizado, você pode usar

select FORMAT(@date,'MM/dd/yyyy hh:mm:s tt')
11
KateA

Usa isto

select CONVERT(VARCHAR(10), mydate, 101) + ' ' + RIGHT(CONVERT(VARCHAR, mydate, 100), 7) from tablename
1
DevelopmentIsMyPassion

Tente isto

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

Para extrair apenas AM/PM

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

Violino

1
Meherzad

Use o cenário a seguir para obter data, hora, dia, mês, ano, horas, minutos, segundos, 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;
1
Charan Ghate

Você pode fazer assim:

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

Para mais informações, consulte:

formato da data

0
user1848942

Use o método convert para formatar um valor datetime. Exemplo:

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

O terceiro parâmetro determina o formato. Você pode encontrar os formatos disponíveis em converter e converter documentação .

0
Guffa