동적 SQL에 구현 된 저장 프로 시저가 있습니다. IN 키워드를 포함시키고 작은 따옴표 사이의 목록에 고정 값을 전달하려고합니다.동적 SQL의 IN 키워드
나는 이런 식으로 뭔가 쓰고 싶은 :
where grp.Status in ('A,S')
을하지만, 위의 문은 이미 작은 따옴표로 캡슐화된다.
나는 아래와 같은 것을 사용하여 시도 :where grp.Status in (' +QUOTENAME('A,S','''')+
하지만 쿼리는 목록 즉 'A'에서 첫 번째 값을 인식한다.
또한 스플릿 함수를 사용하여 임시 테이블에 값을 저장하고 대신 임시 테이블의 열을 사용하는 방법에 대해 읽었습니다. 그러나, 나는 작은 목록을 위해 그 과정을 수행하는 것이 아니다.
모든 제안과 해결책은 대단히 감사하겠습니다.
where grp.Status in ('A','S') . . .
우리의 데이터베이스는 이와 비슷한 것을 처리하지만, 좋은 주인은 그것을 읽을 수없는 혼란에 빠지게 만듭니다. – levelonehuman
@levelonehuman, 그 이유는 분할 기능을 사용하고 테이블에 가입하는 것이 유지하기가 훨씬 쉽기 때문입니다. – HLGEM