...and crset.Name IN (Select [part] from [dbo].[SplitString](@Type, ',')...
는 @Type
이 'Blue,White'
하고 splitstring 기능 날에서 사용하는 목록에 해당 문자열을 설정 할 수 있습니다 가정합니다.
현재이 설정은 파란색 또는 흰색 인 모든 항목을 반환하며 집 색상을 가정합니다. 내가 원하는 것은 "색상이 목록에 있고 목록의 모든 색상을 가져야 만하는 집들입니다. 이것은 각 주택에 대해 여러 항목이 있음을 의미합니다. 그것은 "레드"와 "화이트"에 대한 항목이있는 주택은 나타나지 않고 "블루"에 대한 항목 만 나타나지 않고 "화이트"에 대한 항목은 나타나지 않을 것입니다. 여러 레코드 (파란색, 흰색)을 것이다.이있는 집은
당신이에서 작업에 더 많은 코드가 필요 알려줘.
내부 조인이'in' 절보다 빠르지 않습니까? –
하나의 작은 문제가 있습니다. "집계는 HAVING 절 또는 선택 목록에 포함 된 하위 쿼리에 있지 않으면 집계가 WHERE 절에 나타나지 않을 수 있으며 집계되는 열은 외부 참조입니다." 또는 집합에 포함 된 하위 쿼리에 있지 않으면 집계는 ON 절에 나타날 수 없습니다. HAVING 절 또는 select 목록을 포함하며 집계되는 열은 외부 참조입니다. 더 많은 코드가 필요합니까? – MetalPhoenix
@ MetalPhoenix. . . 이 접근 방식을 따르기 위해 전체 쿼리를 다시 작성해야합니다. 'where' 절을 필터링하면 여러 행에 영향을 미치기 때문에 원하는 것을 할 수 없습니다. –