2014-06-10 5 views
0

이어야합니다. 두 날짜는 @Shutdownfrom 및 @shutdownto입니다. 이 두 날짜의 시간차를 hh : mm 형식 으로 가져오고 싶지만이 시간차를 추가해야합니다. 예 : diff1이 "hh : mm"형식의 문자열 인 경우 rdlc 보고서의 diff1 + diff2 ... 등은 불가능합니다. 날짜 형식으로 시차를 얻을 수있는 방법이 있나요 또는 "HH : mm"에서 얻은 VARCHAR 값으로 변환 할 수있는 방법이 날짜 에 형식 난 당신이 시간 차이를 저장해야 2008시간 차이가 hh : mm이지만 날짜 시간 형식은

답변

0

SQL Server의 IT를하고있는 중이 야가 정수 데이터 형식으로 사용하고 클라이언트 응용 프로그램에 서식을 남겨 둡니다.

예를 들어 @Shutdownfrom과 @Shutdownto의 차이를 계산하려면 일반적으로 DATEDIFF -function ("M"값 사용)을 사용하여 정수 분의 차이를 얻습니다. 이 값을 정수로 저장하면 차이 값을 함께 더하는 데 아무런 문제가 없습니다 (예 : 67 분 + 34 분 = 101 분).

당신은 분의 정수 양의 데이터베이스 형식을 사용해야하는 경우 : "시 분을"(차이가 포함 된 정수 열이 Diff라고 가정) 뷰에서이 같은 것을 사용 :

SELECT CAST(Diff/60 AS VARCHAR) + ':' + RIGHT('0' + CAST(Diff % 60 AS VARCHAR)) AS [Diff_HHMM] 
FROM MyTable 
+0

감사합니다 @ Dan ... 실제로 나는 이것을 가지고있다. 나는 몇 분 안에 diff를 얻었고, 또한 varchar에있는 hh : mm 형식으로 변환했다. 내 requirment 출력 또는 시간 형식의 차이 또는 timeformat로 변환 할 수있는 someformat 클라이언트 응용 프로그램에서 총 기간을 추가 할 수 있도록 결과가 필요합니다. 실제로 내가 추가 할 수없는 rdlc보고 사용하고 있습니다. timediff in hh : mm – user3035477

+0

SQL Server에는 기간 저장을위한 기본 데이터 형식이 없습니다 (특정 시간을 저장하는 데만 사용되는 'time' 데이터 형식과 혼동하지 마십시오). 그 차이를 정수 값으로 저장해야하며,이를 응용 프로그램에 직접 전달해야합니다. 그런 다음 응용 프로그램에서 hh : mm으로 변환을 처리해야합니다. – Dan

+0

, 고마워요.하지만 hh : mm 형식으로 timediff를 추가하는 코드는 와트입니다. – user3035477