2017-04-13 2 views
0

저장 프로 시저가 있습니다. 지금이 같은yyyy-mm-dd에서 형식을 변경하는 방법 hh : mm : ss에서 dd-mm-yyyy hh : mm am/pm

내 생성 시간 형식 : 그리고 나는 테이블 변수에 CREATION_TIME를 선언 2017-04-12 13:01:04.730 내가 12/04/2017 13:01 PM

당신이 나를 도울 수처럼 포맷 할

?

감사합니다.

+2

날짜 (영국/미국 등에 필요한 스왑 월과 일) mm의 TT

형식으로 저장되지 않습니다. 이들은 datetime으로 저장됩니다. 특정 형식을 원할 때 프런트 엔드 응용 프로그램에 맡기는 것이 가장 좋습니다. 그러나 절대적으로 SQL에서 나오는 날짜의 형식을 지정해야한다면 FORMAT 함수 나 CONVERT 중 하나를 사용해야합니다. –

+0

이 함수는 CONVERT (VARCHAR (24), L.CreatedON, 103)를 사용했지만 작동하지 않습니다. SSRS보고 서버를 사용했지만 시간 부분을 변경했습니다. – Aylin

+1

쿼리에서 서식을 강제로 지정하는 대신 SSRS에서 출력의 서식을 지정할 수없는 이유는 무엇입니까? 당신이 당신의 질문에 이것을하기에 전념하지 않는다면 당신은 FORMAT를 사용해야 할 것입니다. –

답변

1

당신은 HH 대 2012+

Declare @D datetime = '2017-04-12 13:01:04.730' 
Select Format(@D,'dd/MM/yyyy hh:mm tt') 

반환

12/04/2017 01:01 PM 

을 주목 HH 경우 형식()를 사용할 수 있습니다. hh은 12 시간을 공급하고 HH은 24 시간을 공급합니다.

는 .... 나는 우리가 FORMAT() 기능을하지 않았을 때 2012보다 이전, 당신은 같은 것을 사용할 수 있습니다 의미 SQL 서버의 이전 버전 13시 1분 오후

1

을 만들 이상한 것 같다

SELECT CONVERT(VARCHAR(10), GETDATE(), 103) + ' ' 
    + LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100) , 7)) 


Returns: 13/04/2017 3:53PM 
1

SSRS에서 제안하는 의견에 동의합니다.

업데이트이 당신의 텍스트 박스/테이블 릭스의 형식 속성 :

DD/MM/YYYY HH :

+0

답변 해 주셔서 감사합니다. 실제로 SSRS는 형식을 변경하는 것이 훨씬 쉬웠습니다. ssrs (텍스트 상자 등록 정보 - 번호 - 사용자 정의 dd/MM/yyyy h : mm tt)의 형식을 업데이트했습니다. 다시 한 번 감사드립니다 :) – Aylin

관련 문제