⊗pyPmDBNSr 115 of 129 menu

Python에서 SQL 쿼리를 통해 레코드 정렬하기

결과 행을 정렬하려면 ORDER BY 명령어를 사용해야 합니다.

예제

users 테이블에서 모든 사용자를 선택하고 나이를 기준으로 오름차순으로 정렬해 봅시다:

query = "SELECT * FROM users ORDER BY age"

실행된 코드의 결과:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

예제

DESC 명령어를 사용하여 정렬 순서를 변경해 봅시다:

query = "SELECT * FROM users ORDER BY age DESC"

실행된 코드의 결과:

{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}

예제

급여가 500인 모든 사용자를 선택하고 나이를 기준으로 오름차순으로 정렬해 봅시다:

query = "SELECT * FROM users WHERE salary=500 ORDER BY age"

실행된 코드의 결과:

{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}

예제

하나의 필드가 아닌 여러 필드로 정렬할 수 있습니다. 예를 들어, 모든 사용자를 선택하고 먼저 나이를 기준으로 오름차순으로 정렬한 다음, 같은 나이를 가진 사용자들은 급여를 기준으로 오름차순으로 정렬해 봅시다:

query = "SELECT * FROM users ORDER BY age, salary"

실행된 코드의 결과:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

예제

ORDER BY 명령어는 LIMIT와 조합할 수 있습니다. 이때 먼저 정렬 명령어를 쓰고, 그 다음에 제한을 써야 합니다. 다음 예제에서는 먼저 레코드를 나이 기준으로 오름차순 정렬한 후, 처음 3개를 가져옵니다:

query = "SELECT * FROM users ORDER BY age LIMIT 3"

실행된 코드의 결과:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}

실습 과제

모든 사용자를 선택하고 급여를 기준으로 오름차순으로 정렬하세요.

모든 사용자를 선택하고 급여를 기준으로 내림차순으로 정렬하세요.

모든 사용자를 선택하고 이름을 기준으로 정렬하세요.

급여가 500인 사용자를 선택하고 나이를 기준으로 정렬하세요.

모든 사용자를 선택하고 이름과 급여를 기준으로 정렬하세요.

사용자를 급여 기준으로 오름차순 정렬하고 정렬 결과에서 처음 3명의 직원을 가져오세요.

사용자를 급여 기준으로 내림차순 정렬하고 정렬 결과에서 처음 3명의 사용자를 가져오세요.

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부