여러 테이블에서 동적 검색을 수행하기위한 패턴을 찾고 있습니다.여러 SQL 테이블의 동적 검색 패턴 필요
레거시 데이터베이스 (또는 잘 설계되지 않은 데이터베이스 테이블 구조)를 제어 할 권한이 없습니다.
사용자가 이력서의 데이터에 대해 검색을 수행하고 검색 기준과 일치하는 이력서 목록을 되찾기를 원하는 이력서 검색과 유사한 시나리오를 생각해보십시오. 모든 필드는 언제든지 하나 이상의 다른 필드와 함께 검색 할 수 있습니다.
실제 SQL 쿼리는 검색되는 필드에 따라 동적으로 생성됩니다. 내가 발견 한 대부분의 솔루션은 복잡한 if 블록을 포함하지만, 지금까지는 해결 된 문제 여야하기 때문에 좀 더 세련된 솔루션이 있어야한다고 생각합니다.
그래, 그래서 코드에서 SQL을 동적으로 빌드하는 경로를 시작했습니다. 사악 해 보입니다. 어떤 테이블에서 어떤 필드의 조합을 쿼리 할 수있는 요청 된 기능을 실제로 지원하려고 시도하면 이것은 하나의 대량의 if 문 집합이 될 것입니다. 전율
은 내가 데이터가 널 (null)을 포함하지 않는 경우 COALESCE 만 작동하는지 읽을 생각합니다. 그 맞습니까? 그렇다면 NULL 값을 가지고 있기 때문에 아무 것도하지 않습니다.