할루 고수님덜...^^
지가 select문에 case를 사용하는디여..
아래의 a.검사결과는 1과 2값을 가지고 있습니다.
구래서 아래와 같이 해봤는데 잘안돼는군여 ^^;;
실해시키면 담과 같은 에러가...
Syntax error (missing operator) in query expression
'(case when a.검사결과 =[1]
then [합격] else [불합격] end) 검사결과'.
이거이 에러내용이구여 아래는 그에러 소스임당... 아래의 소스를 봐주시구여
에러 나는 부분좀 갈켜 주이소 ^^ 구람 존답변 기다리겠습니당...^^ 빠이여..
참 DB는 MS-SQL입니당...... 검사결과의 필드 타입은 int고여...
그리고여 아래소스는 ms-sql의 Query Analyzer에서 확인결과 넘넘 잘도라 감당...
sql.Add('select a.순번,a.제품명,a.고객명,a.검사수량,a.합격수량,a.불량수량');
sql.Add(',a.조처결과,(case when a.검사결과 = "1" then "합격" else "불합격" end) 검사결과,a.검사일자,a.검사자');
sql.add('from (검사명세 a inner join 작업명세 b on a.공정코드=b.공정코드)');
sql.Add('where a.검사일자 between :now1 and :now2');
> 할루 고수님덜...^^
> 지가 select문에 case를 사용하는디여..
> 아래의 a.검사결과는 1과 2값을 가지고 있습니다.
> 구래서 아래와 같이 해봤는데 잘안돼는군여 ^^;;
> 실해시키면 담과 같은 에러가...
> Syntax error (missing operator) in query expression
> '(case when a.검사결과 =[1]
> then [합격] else [불합격] end) 검사결과'.
> 이거이 에러내용이구여 아래는 그에러 소스임당... 아래의 소스를 봐주시구여
> 에러 나는 부분좀 갈켜 주이소 ^^ 구람 존답변 기다리겠습니당...^^ 빠이여..
> 참 DB는 MS-SQL입니당...... 검사결과의 필드 타입은 int고여...
> 그리고여 아래소스는 ms-sql의 Query Analyzer에서 확인결과 넘넘 잘도라 감당...
>
>
> sql.Add('select a.순번,a.제품명,a.고객명,a.검사수량,a.합격수량,a.불량수량');
> sql.Add(',a.조처결과,(case when a.검사결과 = "1" then "합격" else "불합격" end) 검사결과,a.검사일자,a.검사자');
> sql.add('from (검사명세 a inner join 작업명세 b on a.공정코드=b.공정코드)');
> sql.Add('where a.검사일자 between :now1 and :now2');
안녕하세요. 까마귀입니다.
이렇게 바꿔서 해보세요.
sql.Add('...., 검사결과 = (case when a.검사결과 = "1" then "합격" else "불합격" end),...');
위대한 단군혼이 살아있는 나라.... 대한민국.