Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python을 사용하여 MySQL에서 SELECT DISTINCT 문의 사용을 설명합니까?

<시간/>

SQL 테이블 내에서 열은 일반적으로 중복 값을 포함합니다. 중복 값으로 인해 쿼리에서 반환된 결과를 분석하기 어렵기 때문에 테이블의 열에 있는 고유하거나 다른 값만 가져와야 하는 경우가 있습니다.

예:

고객, 이름, 나이 및 국가 등에 대한 세부 정보가 포함된 Customers라는 테이블이 있다고 가정합니다. 고객이 속한 다른 국가를 알아야 합니다. 인도에서 10명의 고객이 있고 미국에서 15명의 고객이 있을 수 있습니다. 단순히 국가 열을 선택하면 중복 값이 ​​많은 전체 열이 반환됩니다. 이는 결과를 분석하기 어렵기 때문에 목적에 부합하지 않습니다. 우리는 단지 구별되는 국가를 알고 싶을 뿐입니다.

이 시나리오에서는 MySQL의 "SELECT DISTINCT" 문을 사용합니다.

구문

SELECT DISTINT column_name FROM table_name

파이썬에서 MySQL을 사용하여 데이터베이스의 테이블에서 고유한 값을 선택하는 주요 단계

  • mysql 커넥터 가져오기

  • connect()를 사용하여 커넥터와 연결 설정

  • cursor() 메소드를 사용하여 커서 객체 생성

  • 적절한 mysql 문을 사용하여 쿼리 생성

  • execute() 메서드를 사용하여 SQL 쿼리 실행

  • 연결을 끊다

"Customers"라는 이름의 다음 테이블이 있다고 가정합니다.

+----------+---------+
| name     | country |
+----------+---------+
|    John  | America |
|   Peter  | England |
|   Karan  | India   |
|   Rohit  | India   |
|   Rohan  | America |
|    Arsh  | France  |
|   Aryan  | England |
+----------+---------+

이 표에서 고유한 국가 이름을 선택해야 합니다.

import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

query="SELECT DISTINCT country FROM Customers "
cursor.execute(query)
for names in cursor:
   print(names)
db.close()

위의 코드는 고유한 국가 이름을 반환합니다.

출력

America
England
India
France