>  기사  >  데이터 베이스  >  SQL에서 구별을 사용하는 방법에 대한 자세한 설명

SQL에서 구별을 사용하는 방법에 대한 자세한 설명

黄舟
黄舟원래의
2017-12-05 15:02:493216검색

distinct 이 키워드는 중복된 중복 레코드를 필터링하여 하나만 유지하는 데 사용되지만, 고유한 레코드의 모든 값을 반환하는 데 사용하는 대신 고유한 레코드의 개수만 반환하는 데 사용되는 경우가 많습니다. 그 이유는 Distinct는 대상 필드만 반환할 수 있고 다른필드는 반환할 수 없기 때문입니다. 다음으로 이 글을 통해 SQL에서 Distinct의 사용법을 공유하겠습니다. 필요한 친구들은 mysql을 사용할 때 참고할 수 있습니다.

, 때로는 특정 필드에서 고유한 레코드를 찾기 위해

쿼리가 필요한 경우가 있습니다. mysql은 중복된 레코드를 필터링하고 하나만 유지하기 위해 고유한 키워드를 제공하지만, 대신 고유한 레코드 수를 반환하는 데만 사용되는 경우가 많습니다. 사용하여 중복된 기록 없이 모든 값을 반환합니다. 그 이유는 구별은 대상 필드만 반환할 수 있고 다른 필드는 반환할 수 없기 때문입니다. 이 문제는 오랫동안 나를 괴롭혔습니다. 구별로 해결할 수 없다면 이중 루프 쿼리로만 해결할 수 있습니다. 대용량 웹사이트의 경우에는 의심할 여지없이 효율성에 직접적인 영향을 미치기 때문에 많은 시간을 낭비했습니다. 표에 중복된 값이 있을 수 있습니다. 이는 문제가 되지 않지만 때로는 고유한 값만 나열하고 싶을 수도 있습니다. Unique 키워드는 고유한 고유 값을 반환하는 데 사용됩니다.

테이블 A:

예제 1

코드는 다음과 같습니다.

select distinct name from A

실행 후 결과는 다음과 같습니다.

예제 2

코드는 다음과 같습니다 :

select distinct name, id from A

실행 후 결과는 다음과 같습니다.

는 실제로 "name+id"

를 기반으로 합니다. 이 방법은

Access 및 SQL Server에서 지원됩니다. 동시에. 예 3: 통계

코드는 다음과 같습니다.

select count(distinct name) from A;    --表中name去重后的数目, SQL Server支持,而Access不支持
select count(distinct name, id) from A; --SQL Server和Access都不支持
예 4

코드는 다음과 같습니다.

select id, distinct name from A;   --会提示错误,因为distinct必须放在开头
Others

select 문에 표시되는 필드는 개별적으로 지정된 필드, 기타 필드는 표시가 불가능합니다. 예를 들어, 테이블 A에 "Remarks" 열이 있는 경우 고유한 이름과 해당 "Remarks" 필드를 가져오려는 경우 고유한 이름을 통해 직접 수행하는 것은 불가능합니다.

요약:

이 기사에서는 예제를 사용하여 SQL에서 구별의 사용을 자세히 소개하고 보다 직관적으로 구별을 보여줍니다. 귀하의 업무에 도움이 되기를 바랍니다!

관련 권장 사항:

mysql은 고유한 통계 결과를 계산하여 중복 항목을 제거합니다.
뚜렷한 문제로 인한 사고

Oracle - 고유한 사용

SQL 구별의 사용법(4가지 예 분석)

위 내용은 SQL에서 구별을 사용하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.