데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

다른 곳에서 값들을 뽑아 와서 union all 로 전체 값을 뽑으려고 합니다.


그런데


각각의 쿼리를 하면 이상이 없는 데 union all 로 결과값을 묶어서 뽑으려고 하면

"varchar을(를) numeric(으)로 변환하는 중 오류가 발생했습니다. "

오류가 발생을 합니다.



 Select so_code ,  sales ,  cost, convert(Numeric,mSales) as sum_sales ,  convert(Numeric,mSales - convert(Numeric,mCost) as SProfit  from 테이블1

union all

 Select so_code , max(sales) as sales , max(cost) as cost, sum( convert(Numeric,taxmoney) ) as sum_sales ,   sum( ( convert(Numeric,taxmoney)) * Profit)   as SProfit  from 테이블2   group by so_code, taxdate


이런 식으로  쿼리가 되어져 있는데요..


 Select so_code ,  sales ,  cost, convert(Numeric,mSales) as sum_sales ,  convert(Numeric,mSales - convert(Numeric,mCost) as SProfit  from 테이블1 만 실행시켜도 결과값이 나오고...


 Select so_code , max(sales) as sales , max(cost) as cost, sum( convert(Numeric,taxmoney) ) as sum_sales ,   sum( ( convert(Numeric,taxmoney)) * Profit)   as SProfit  from 테이블2   group by so_code, taxdate

를 실행시켜도 결과값이 나오는데...




 Select so_code ,  sales ,  cost, convert(Numeric,mSales) as sum_sales ,  convert(Numeric,mSales - convert(Numeric,mCost) as SProfit  from 테이블1

union all

 Select so_code , max(sales) as sales , max(cost) as cost, sum( convert(Numeric,taxmoney) ) as sum_sales ,   sum( ( convert(Numeric,taxmoney)) * Profit)   as SProfit  from 테이블2   group by so_code, taxdate

 이렇게 하면 "varchar을(를) numeric(으)로 변환하는 중 오류가 발생했습니다. " 이런 오류가 나옵니다.

그래서 하나씩 빼면서 봤는데.. SProfit   부분이 문제가 있는거 같은데.. 어떻게 수정을 해야 할까요?



CAST(convert(Numeric,( mSales - mCost )) as Numeric ) as SProfit 이렇게도 해보고  했는데... 안되네요.


* 첫번째 쿼리 결과

SO-11620000013320000144213625637.9822


* 두번째 쿼리 결과

SO-32527272732252656361471818159929.442
SO-424450002368800244500076200
SO-565360000056085689065360000092743110
SO-676300073920076300023800


각각은 나오는데..

이걸 union all 을 하면 오류가 납니다.  결과를 가지고 보면 가장 마지막 데이터인 SProfit 을 쿼리에서 빼고 실행을 시키면 결과값이 나오니,

SProfit 의 형 문제인건 같은데..

아무리 해도 안되네요.

No. Subject Author Date Views
8710 로그인 접속 기간 쿼리 문의입니다. [1] 짬자면굿 2015.05.09 2912
8709 페이징될 실제 페이지 번호 미리 알기 [1] DDM 2015.05.08 3433
8708 update 문의 [1] 준후택 2015.05.08 2347
8707 DB 유효 공간 이유진_301818 2015.05.07 2436
8706 날짜계산 ! :) [5] 마힐링 2015.05.07 3179
8705 데이터가 많을 경우 적을경우와 비교해서 인덱스 삭제시 시간이 많이 걸리나요? [1] 로쏘네리 2015.05.07 2264
8704 sp_send_dbmail db메일전송 권한관련 질문 [1] 풀내기vber 2015.05.07 4463
8703 스키마 삭제 [1] hhhh 2015.05.07 2439
8702 유지관리 계획작업시 네트워크 드라이브 백업 문의 [4] jump76821 2015.05.07 3564
8701 space에 간혹 ? 가 들어 갑니다. 닉네임중복 2015.05.06 2150
8700 rollback...ㅜ.ㅜ [1] 마힐링 2015.05.06 2280
8699 SQL 프로시저 관련 질문 [1] 산들마을호랑이 2015.05.06 2511
8698 sql 문자열 관련 쿼리질문드립니다. [2] 초보ㅠㅠ 2015.05.04 2212
8697 새로 컬럼을 가로로 보여줄수 없을까요? [1] neiyan 2015.05.04 2211
» union all 로 했을 때 데이터 형식 varchar을(를) numeric(으)로 변환하는 중 오류가 발생했습니다. [1] taz2315 2015.05.04 3834
8695 sql 서버 데이터가져오기를 하다가 오류가 발생했습니다. [1] 가네탑 2015.05.02 2631
8694 합산 관련 쿼리 질문드립니다. [2] 생각찾기 2015.05.01 3811
8693 SQL공부하면서 궁금한게 있어서 질문드립니다. [1] 김트레기 2015.05.01 1970
8692 디비용량 관련 [1] hhhh 2015.05.01 2329
8691 sql 동기화(?)에 대해 질문드릴께요 [7] 중전 2015.04.30 2809





XE Login