MySQL에서 여러 범주에 속하는 항목을 선택하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-10-31 22:02:02
원래의
386명이 탐색했습니다.

How to Select Items Belonging to Multiple Categories in MySQL?

MySQL을 사용하여 데이터베이스 열에서 여러 값 일치 선택

문제:

항목이 다음과 같은 연관 테이블이 있습니다. 여러 카테고리에 속합니다. 지정된 범주 집합에 속하는 항목만 어떻게 선택할 수 있습니까?

해결책:

열에 대해 여러 특정 값을 만족하는 항목을 선택하려면 다음이 있습니다. MySQL의 두 가지 기본 접근 방식:

자체 조인 방법:

이 방법은 한 번의 조인 작업으로 동일한 테이블의 여러 행을 비교합니다. 예를 들어 카테고리 201과 202의 항목을 선택하려면:

SELECT c1.item_id
FROM item_category AS c1
INNER JOIN item_category AS c2 ON c1.item_id = c2.item_id
WHERE c1.category_id = 201 AND c2.category_id = 202
로그인 후 복사

GROUP BY 방법:

이 방법은 행을 열별로 그룹화하고 COUNT() 메서드를 사용합니다. 항목이 지정된 모든 카테고리에 속하는지 확인하기 위해 집계됩니다. 예를 들어 카테고리 201과 202의 항목을 선택하려면:

SELECT c.item_id, COUNT(*) AS cat_count
FROM item_category AS c
WHERE c.category_id IN (201,202)
GROUP BY c.item_id
HAVING cat_count = 2
로그인 후 복사

이 두 가지 방법 중 선택은 검색하는 카테고리 수와 성능 고려 사항에 따라 다릅니다.

위 내용은 MySQL에서 여러 범주에 속하는 항목을 선택하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿