12,39,57,29,33,43,19,32,20,23,12,19,13,8,8,9,9,8,8,9,8,8,9,8,8,8,9,8,8,9,8,8,8,9,8,8,9,9,8,9,8,8,8,9,8,8,9,8,8,9,8,8,12,9,10,8,9,9,10,10,2,

2014-07-01 

2

 1,5,4,10,12,4,23,9,1,0,0,11,7,4,7,0,1,2,3,4,0,3,1,5,25,38,43,13,6,

 2014-07-02

 18,29,13,27,23,14,11,9,9,8,8,8,9,8,8,9,8,8,8,9,8,9,9,8,8,9,8,8,8,9,8,8,9,8,8,9,8,8,8,9,8,

 2014-07-03

 0,1,2,1,0,0,2,1,2,2,0,0,14,9,12,12,4,13,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,2,0,0,0,0,0,0,0,0,0,0,0,0,

 2014-07-04

12,39,57,29,33,43,19,32,20,23,12,19,13,8,8,9,9,8,8,9,8,8,9,8,8,8,9,8,8,9,8,8,8,9,8,8,9,9,8,9,8,8,8,9,8,8,9,8,8,9,8,8,12,9,10,8,9,9,10,10,22,23,12,

18,9,16,17,20,8,9,10,9,10,10,8,8,8,9,8,8,9,8,12,28,13,14,17,35,33,30,35,39,26,33,25,27,49,17,16,30,30,10,17,40,36,45,37,36,29,16,20,23,18,15,

24,17,8,16,52,39,36,19,20,14,69,45,49,29,26,47,25,16,16,34,24,33,22,15,19,13,8,9,8,8,8,9,8,8,9,8,8,9,8,8,8,9,8,8,9,8,9,8,9,8,8,9,8,8,9,8,8,8,

 2014-07-05


5분마다 들어오는 숫자를 ,로 구분하여 varchar(max)형으로 넣은 칼럼이 있습니다. 끝에도 ,로 들어가고요..

이걸 한 칼럼..그러니까 하루에 기록된 숫자의 합산을 구하려고 해서 검색하다가 문자열에서 숫자 합계 구하기(http://www.sqler.com/140487)를 발견해서 석이님이 리플로 달아두신 방법으로 쓰면 되겠다싶어 썼더니 아래와 같은 오류가납니다.


Msg 537, Level 16, State 3, Line 20
Invalid length parameter passed to the LEFT or SUBSTRING function.


그래서 이것저것 만저보다 쿼리 중에 CROSS APPLY (   SELECT TOP (2047) NUMBER S <이부분에 TOP (2047)을 80까지 줄이니 오류없이 합산이 되는데..이게 하루에 5분마다 들어온 숫자를 기록해서 다음날 전일 들어온 숫자 전부를 합산하는거라 80으로 줄이면 끝에 부분이 잘리는 문제가 있습니다. 오류를 검색해보니 해당 null 칼럼의 길이 값이 null이라 그렇다고 하는데 null값으로 들어간 것도 없는데 뭐가 문제인지 모르겠네요 오류없이 해결할 수 있는 방법이 없을까요? 5번 칼럼 정도의 길이가 매일 칼럼에 기록됩니다.


아래는 제가 사용한 구문입니다.


SET @RecordDate = CONVERT(VARCHAR(10), GETDATE()-1, 111)--yyyy/mm/dd

 SELECT  @OnlineMax =SUM(CAST(SUBSTRING(A.Daliy_CCU,B.S,B.E-B.S) AS INT))
 FROM LOG_CCU A
 CROSS APPLY (
  SELECT TOP (80) NUMBER S
      , CHARINDEX(',',A.Daliy+',',NUMBER + 1) E
      FROM MASTER.DBO.SPT_VALUES
      WHERE NUMBER = CHARINDEX (',',','+A.Daliy,NUMBER)
      AND TYPE ='P'
      ORDER BY NUMBER) B
 WHERE DATEDIFF(DAY,@RecordDate, RegTime) = 0
 GROUP BY A.DBIDX
 WITH ROLLUP



No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 496
8010 프로시저 질문 입니다. [3] 개발자_ver 2014.07.07 2061
8009 inner join시 해당 날짜만 검색하고 싶습니다. [1] 사이드사이드 2014.07.07 2869
8008 행삭제가 안되네요 [3] 고쳐주세요 2014.07.07 2201
8007 케스트 사양에 대한 갑이 올바르지 않다고 뜹니다 [1] 연어초밥 2014.07.07 1925
8006 계정에 관해 질문드립니다. [2] 연어초밥 2014.07.06 5289
8005 쿼리 질문드립니다.. [3] 하하하하하 2014.07.04 2635
8004 mssql200이 설치된 웹서버에서 mssql2005 설치된 웹서버로 DB 접속문의 [2] Larry 2014.07.04 3404
8003 insert select 데이타 사라짐 [7] 연금술사 2014.07.04 4293
8002 운영중인 DB 서버의 윈도우 administrator 계정 이름 변경 [2] 내안의다른삶 2014.07.03 3111
8001 에러좀 봐주세요.... [1] 처리짱 2014.07.03 2590
8000 소수점 처리 와 컴마 표시를 동시에 할수있을까요? [2] 고구망 2014.07.03 4657
7999 안녕하세요 쿼리 질문있습니다. spotlight81 2014.07.03 2570
» 문자열에서 숫자의 합계를 구하는데 오류가 뜹니다. [1] 사이드사이드 2014.07.03 2427
7997 TableDiff 유틸리티 사용관련해서 질문드립니다. HoyaSoft 2014.07.03 2434
7996 analysis service 관련문의 dunhill123 2014.07.03 2165
7995 비밀번호 *로 ㅜㅜ [3] 마힐링 2014.07.02 2570
7994 db와 연결이 안돼요.. [2] 송이송이 2014.07.02 2687
7993 관련된 컬럼 데이터를 레코드에 추가해서 보고싶을때 [3] Merermero 2014.07.01 2437
7992 push기능이 있나요? [3] 딱풀 2014.06.30 2176
7991 SSMS 관련 [2] 필묵 2014.06.29 3999





XE Login