1

나는 하나의 보고서 명명 된 자원 프로젝션을 만들어 3 개 매개 변수 만들었습니다보고서 작성기 3.0 쿼리 디자이너에서 문자열을 분할하는 방법?

  1. 기술 능력 : 유형 : 텍스트, 선택한 여러 : 사실, 빈 값 : 참, 기본값 : 데이터베이스에서 하나의 행 (15 주위에 값을).

  2. 관리 기술 : 유형 : 텍스트, 선택한 여러 : 사실, 빈 값 : 참, 기본값 : 하나의 행 데이터베이스 (7 값 정도).

  3. 역할 : 유형 : 텍스트, 선택한 여러 : 사실, 빈 값 : 참, 기본값 : (30 값 주위) 데이터베이스에서 하나의 행입니다.

그리고 내 쿼리는 다음과 같습니다

SELECT O.CustomerIdName, 
    TC.New_ResourcesIdName, 
    TC.New_number, 
    TC.New_RoleIdName, 
    TC.New_Skill_value, 
    TC.New_mng_value, 
    TC.New_year, 
    convert(nvarchar(10),TC.New_StartDate,101) as New_StartDate, 
    convert(nvarchar(10),TC.New_EndDate,101) as New_EndDate 
FROM New_resource as TC 
INNER JOIN Opportunity as O ON 
    (TC.New_ResourcesId = O.OpportunityId) 
WHERE TC.DeletionStateCode = '0' 
    and TC.New_ResourcesId is not null 
    and ((TC.New_Skill_value in (@TechnicalSkills))or (TC.New_mng_value in (@ManagementSkills))) 
    and TC.New_RoleIdName in (@Role) 

하지만 New_Skill_valueNew_mng_value 같이 코마로 구분 된 문자열을 포함 :이 보고서를 실행할 때 지금은 단지에만 포함 나 열을 보여줍니다

New_Skill_value = "Android,Java,PHP,SQL". 
New_mng_value = "Communication Skill, Decision Making Skill". 

을 하나 New_skill_valueNew_Mng_value.

어떻게이 쉼표로 구분 된 두 개의 문자열을 분리하고 쉼표로 구분 된 문자열로 모든 레코드를 표시합니까?

답변

0

당신이 당신의 New_Skill_value 및 New_mng_value는 쉼표로 구분하고, 당신이 전달하는 매개 변수는 쉼표로 구분됩니다 말하는 것처럼. 테이블 값과 전달 변수 값 사이의 일치가있는 경우에만

그래서 위의 쿼리가 작동합니다.

나는 다음이 쿼리는 아무 것도 반환하지 않을 수 있습니다 당신은 동일한 값 세트를 포함 할 수있다 전달하는 변수로하지만, 다른 순서로이 항상 발생하지 않을 것 같아요. 당신은 ID, 값과 같은 별도의 테이블로 테이블의 모든 쉼표로 분리 된 열을 분할하고 또한 후 정확한 결과를 얻기 위해 임시 테이블에 가입 할 수 있습니다 가능하면

그래서 내가 여기에 건의 할 것 같습니다.

여기서 임시 테이블은 변수의 값일뿐입니다.