하나의 테이블에 3 개의 열이 있습니다. @ Month, @ Year 및 @column_Name과 같은 세 개의 매개 변수를 사용하여 저장 프로 시저를 만들고 아래의 결과를 얻으려고합니다. 현재 값을 합하고 싶습니다. column1과 column2, 즉 HH에있는 데이터 : mm : ss 형식의 문자열은 분으로 나타납니다 [예 : '01 : 00 : 00 '결과는 where 절의 매개 변수와 함께 나타납니다.where 절의 열 이름이있는 저장 프로 시저
참고 : Column1
및 Column2
의 데이터 유형은 varchar
이고 데이터는 hh:mm:ss
형식입니다. 저장 프로 시저의 표에서
샘플 날짜
Date_Col Column1 Column2
2014-12-17 10:00:00.000 01:10:00 00:15:00
2014-12-18 11:12:00.000 02:22:00 00:52:00
2015-01-15 09:32:00.000 00:34:00 01:09:00
2015-01-16 11:43:00.000 10:00:00 02:00:00
결과
@Month = 12 ,@Year = 2014,@Column_Name = Column1
는 아래
Date_Col Column1
--------------------------------------------------------------------
2014-12-17 70 [01:10:00 = 60 + 10 min]
2014-12-18 142
내가
를 참조하고있는 SP입니다 10
는하지만 오류를 반환 :
Msg 241, Level 16, State 1, Procedure Test_SP, Line 8
Conversion failed when converting date and/or time from character string.
이
[걷어차 나쁜 습관 : 잘못된 데이터 유형 선택] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/12/bad-habits-를 to-kick-using-the-wrong-data-type.aspx) - 항상 가장 적합한 데이터 유형을 사용해야합니다. 당신이 날짜를 가지고 있다면 - ** 적절한 데이터 타입 - ** DATE' 또는'DATETIME2 (3)'또는 **에 그들을 ** 저장할 것입니다 ** 그러나 그것들을 ** VARCHAR로 저장하지 마십시오! 당신은 단지 문제를 묻는 중입니다 ... –
Ok 그리고 select 쿼리에서 매개 변수를 전달하는 것은 무엇입니까 – Parth
'Date'로 변환 (date, date_col)은 this f9 – Parth