고급 SQL 쿼리를 위한 LIKE와 IN 결합
SQL에서는 LIKE 연산자가 패턴 일치에 자주 사용되는 반면 IN 연산자는 허용됩니다. 특정 값 목록과 값을 일치시키려면 이러한 연산자는 다양한 용도로 사용되지만 이를 결합하여 더 강력한 쿼리를 생성할 수 있습니다.
다음 시나리오를 고려해 보겠습니다. "company_id"라는 열이 있는 테이블이 있고 해당 연산자가 있는 모든 행을 선택하려고 합니다. "company_id"는 "M510", "M615", "M515", "M612"와 같은 특정 문자열로 시작합니다.
한 가지 접근 방식은 다음과 같이 LIKE 연산자를 사용하는 것입니다.
SELECT * FROM tablename WHERE company_id LIKE 'M510%'
단, "M510"으로 시작하는 행만 정확하게 일치합니다. 여러 문자열을 일치시키려면 여러 쿼리를 만들어야 합니다.
IN에 하위 문자열 사용
더 효율적인 솔루션은 IN 연산자와 함께 하위 문자열을 사용하는 것입니다. SUBSTRING() 함수는 문자열에서 지정된 위치부터 시작하여 지정된 수의 문자를 추출합니다.
이 시나리오에서는 다음 쿼리를 사용할 수 있습니다.
SELECT * FROM tablename WHERE SUBSTRING(company_id, 1, 4) IN ('M510', 'M615', 'M515', 'M612')
이 쿼리는 "compan_id" 열에서 처음 4자를 추출하고 IN 절에 지정된 값 목록에 해당 문자가 있는지 확인합니다. 부분 문자열을 IN과 결합하면 문자열 배열을 반복할 필요 없이 원하는 패턴 일치를 얻을 수 있습니다.
위 내용은 보다 강력한 SQL 쿼리를 위해 LIKE와 IN을 결합할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!