이 가이드에서는 SQL 데이터베이스 내에서 여러 열의 고유한 조합을 효율적으로 선택하는 방법을 보여줍니다. 특정 값 조합을 기반으로 고유한 행이 필요할 때 필요합니다.
방법 1: 활용 SELECT DISTINCT
가장 간단한 접근 방식은 DISTINCT
키워드를 활용하는 것입니다. 지정된 열을 기준으로 고유한 행만 직접 선택합니다.
예를 들어 saleprice
테이블에서 saledate
및 sales
의 고유한 조합을 얻으려면 다음을 수행하세요.
<code class="language-sql">SELECT DISTINCT saleprice, saledate FROM sales;</code>
방법 2: DISTINCT
와 GROUP BY
간단하고 고유한 행을 선택하려면 DISTINCT
만으로도 충분하지만, GROUP BY
과 결합하면 특히 추가 데이터 조작이 필요할 때 더 많은 제어력과 유연성을 제공합니다. GROUP BY
은 지정된 열을 기준으로 행을 그룹화하고 DISTINCT
은 그룹당 하나의 행만 반환되도록 합니다. 이 방법은 더욱 복잡한 시나리오에 특히 유용합니다.
방법 3: 고급 작업을 위한 하위 쿼리 사용
하위 쿼리는 특히 업데이트 또는 필터링 전에 그룹화된 데이터에 대해 추가 작업을 수행해야 하는 경우 고유한 조합을 선택하는 강력한 메커니즘을 제공합니다.
예를 들어 status
및 saleprice
:saledate
을 기반으로 고유 매출에 대한
<code class="language-sql">UPDATE sales SET status = 'ACTIVE' WHERE id IN ( SELECT id FROM sales S INNER JOIN ( SELECT saleprice, saledate FROM sales GROUP BY saleprice, saledate HAVING COUNT(*) = 1 ) T ON S.saleprice = T.saleprice AND S.saledate = T.saledate );</code>
이 쿼리의 하위 쿼리는 saleprice
및 saledate
을 사용하여 고유한 GROUP BY
및 HAVING COUNT(*) = 1
조합을 식별합니다. 그런 다음 기본 쿼리는 해당 판매 기록의 status
를 'ACTIVE'로 업데이트합니다. 이 접근 방식을 사용하면 테이블을 업데이트하기 전에 유연한 데이터 조작 및 필터링이 가능합니다. HAVING
절은 정말 고유한 조합(한 번만 나타나는 조합)만 고려되도록 보장합니다.
위 내용은 SQL에서 여러 열의 고유한 조합을 어떻게 선택할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!