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

MySQL에서 선택 쿼리로 얻은 결과를 어떻게 주문할 수 있습니까?

<시간/>

테이블에서 특정 데이터나 행을 선택하는 것이 일반적입니다. 행은 테이블에 나타나는 순서대로 반환됩니다. 때때로 테이블에서 선택한 행을 일부 열에 대해 오름차순 또는 내림차순으로 반환해야 할 수도 있습니다.

"ORDER BY" 문은 일부 열에 대해 결과를 정렬하는 데 사용됩니다. 다음 예를 보면 더 명확해집니다.

"이름" 필드를 포함하여 다양한 필드로 구성된 테이블이 있다고 가정합니다. 테이블에서 모든 행을 선택하고 싶지만 행은 이름의 알파벳 순서로 정렬되어야 합니다. 여기에서 "ORDER BY"문이 작동합니다. 이 시나리오에서는 "이름" 필드의 오름차순으로 결과를 정렬해야 합니다.

"ORDER BY" 문은 기본적으로 지정된 열을 오름차순으로 정렬합니다. 결과를 내림차순으로 정렬하려면 동일하게 지정해야 합니다. 결과를 내림차순으로 정렬하려면 "DESC" 키워드를 지정해야 합니다.

구문

오름차순

SELECT * FROM table_name ORDER BY column_name

내림차순

SELECT * FROM table_name ORDER BY column_name DESC

python에서 MySQL을 사용하여 테이블에서 검색된 데이터를 주문하는 단계

  • MySQL 커넥터 가져오기

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

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

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

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

  • 연결을 끊다

다음과 같이 "Student"라는 테이블이 있다고 가정합니다. -

+----------+---------+----------+------------+ | 이름 | 수업 | 도시 | 표시 |+----------+---------+----------+------------+| 카란 | 4 | 암리차르 | 95 || 사힐 | 6 | 암리차르 | 93 || 크리티 | 3 | 바탈라 | 88 || 쿠시 | 9 | 델리 | 90 || 키라트 | 5 | 델리 | 85 |+----------+---------+-----------+------------+ 

예시

테이블의 모든 행을 이름의 알파벳 순서로 선택하려고 합니다. 간단히 말해서 결과를 이름의 오름차순으로 정렬하려고 합니다.

 가져오기 mysql.connectordb=mysql.connector.connect(host="호스트", user="사용자 이름", password="yourpassword",database="database_name")cursor=db.cursor()query=" SELECT * FROM Students ORDER BY Name"cursor.execute(query) for row in cursor:print(row)

위의 코드가 성공적으로 실행되면 학생 이름의 오름차순 또는 알파벳 순서로 행을 반환합니다.

출력

('Amit' , 9 , 'Delhi' , 90)('Karan', 4 ,'Amritsar' , 95)('Kriti' , 3 , 'Batala' ,88)('Priya' , 5 , ' 델리' ,85)('사힐' , 6 , '암리차르' ,93)

표시된 모든 행은 이름의 알파벳 순서입니다. 마찬가지로 행은 유사한 구문에 따라 표시의 오름차순 또는 내림차순으로 정렬될 수 있습니다.