집 >데이터 베이스 >MySQL 튜토리얼 >다음은 다양한 수준의 구체성을 가지고 노는 몇 가지 제목 옵션입니다. **직접적이고 간결함:** * **SQL의 IN 절에 변수를 전달하는 방법** * **IN 절을 사용한 동적 필터링: FI 사용
배경:
SQL에서 IN 절을 사용하면 열의 값을 비교할 수 있습니다. 값 세트로. 특정 시나리오에서는 값 목록이 포함된 변수를 IN 절에 동적으로 전달해야 할 수 있습니다.
문제:
SP에 SELECT 문이 포함되어 있습니다. IN 절을 사용하여 목록의 특정 값을 기반으로 결과를 필터링합니다. 그러나 값 목록을 개별적으로 지정하는 대신 단일 변수로 전달해야 합니다.
해결책:
IN 절에 변수를 전달하려면 다음을 고려하세요. FIND_IN_SET 함수를 사용합니다. 이 함수는 두 개의 매개변수를 사용합니다.
수정된 쿼리:
SELECT product_id, product_price FROM product WHERE FIND_IN_SET(product_type, param);
매개변수 값 전달:
호출 시 SP의 경우 쉼표로 구분된 값 목록을 'param' 변수의 값으로 전달합니다. 예:
EXEC SP @param = 'AA,BB,CC'
설명:
FIND_IN_SET 함수는 지정된 열 값이 쉼표로 구분된 목록에 있으면 1을 반환하고 그렇지 않으면 0을 반환합니다. 이 함수를 사용하면 'param' 변수에 전달된 값을 기반으로 결과를 동적으로 필터링할 수 있습니다.
위 내용은 다음은 다양한 수준의 구체성을 가지고 노는 몇 가지 제목 옵션입니다. **직접적이고 간결함:** * **SQL의 IN 절에 변수를 전달하는 방법** * **IN 절을 사용한 동적 필터링: FI 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!