In diesem Artikel werden wir besprechen, wie die Order-by-Klausel in PostgreSQL mit Python verwendet wird.

Die Order By-Klausel wird verwendet, um die Datensätze einer Tabelle, die von der SELECT-Klausel zurückgegeben werden, standardmäßig in aufsteigender Reihenfolge zu sortieren, aber das Schlüsselwort asc kann verwendet werden. Wenn wir die Datensätze in absteigender Reihenfolge sortieren wollen, müssen wir desc word schreiben. 

Syntax :

SELECT
    column1, column2, ....
FROM
    table_name
ORDER BY
    column1, colum2,.... [ASC | DESC]

Verwendete Daten:

Importieren Sie zunächst alle benötigten Bibliotheken in den Arbeitsbereich und stellen Sie dann die Verbindung zur Datenbank her. Initialisieren Sie nun einen Cursor und übergeben Sie die auszuführende SQL-Anweisung. Drucken Sie die generierte Ergebnismenge und schließen Sie die Verbindung.

Beispiel 1: Python-Code zum Anzeigen des Zustandsnamens in absteigender Reihenfolge

Python3

# importing psycopg2 module
import psycopg2
  
# establishing the connection
conn = psycopg2.connect(
    database="postgres",
    user='postgres',
    password='password',
    host='localhost',
    port='5432'
)
  
# creating cursor object
cursor = conn.cursor()
  
# creating table
sql = '''CREATE TABLE Geeks(
 id  SERIAL NOT NULL,
 name varchar(20) not null,
 state varchar(20) not null
)'''
cursor.execute(sql)
  
# inserting values in the table
cursor.execute('''INSERT INTO Geeks(name , state) VALUES ('Babita','Bihar')''')
cursor.execute(
    '''INSERT INTO Geeks(name , state) VALUES ('Anushka','Hyderabad')''')
cursor.execute(
    '''INSERT INTO Geeks(name , state) VALUES ('Anamika','Banglore')''')
cursor.execute('''INSERT INTO Geeks(name , state) VALUES ('Sanaya','Pune')''')
cursor.execute(
    '''INSERT INTO Geeks(name , state) VALUES ('Radha','Chandigarh')''')
  
  
# query to sort table by descending order of state
sql2 = 'select * from Geeks order by state desc;'
# executing query
cursor.execute(sql2)
# fetching records
print(cursor.fetchall())
  
# Commit your changes in the database
conn.commit()
  
# Closing the connection
conn.close()

Ausgabe:

[(4, 'Sanaya', 'Pune'), (2, 'Anushka', 'Hyderabad'), (5, 'Radha', 'Chandigarh'), (1, 'Babita', 'Bihar'), ( 3, 'Anamika', 'Banglore')]

Beispiel 2: Python-Code zum Anzeigen von Datensätzen von Geeks in aufsteigender Reihenfolge der Namen

Python3

# importing psycopg2 module
import psycopg2
  
# establishing the connection
conn = psycopg2.connect(
    database="postgres",
    user='postgres',
    password='password',
    host='localhost',
    port='5432'
)
  
# creating cursor object
cursor = conn.cursor()
  
# creating table
sql = '''CREATE TABLE Geeks(
 id  SERIAL NOT NULL,
 name varchar(20) not null,
 state varchar(20) not null
)'''
cursor.execute(sql)
  
# inserting values in the table
cursor.execute('''INSERT INTO Geeks(name , state) VALUES ('Babita','Bihar')''')
cursor.execute(
    '''INSERT INTO Geeks(name , state) VALUES ('Anushka','Hyderabad')''')
cursor.execute(
    '''INSERT INTO Geeks(name , state) VALUES ('Anamika','Banglore')''')
cursor.execute('''INSERT INTO Geeks(name , state) VALUES ('Sanaya','Pune')''')
cursor.execute(
    '''INSERT INTO Geeks(name , state) VALUES ('Radha','Chandigarh')''')
  
  
# query to sort table by name
sql2 = 'select * from Geeks order by name;'
# executing query
cursor.execute(sql2)
# fetching records
print(cursor.fetchall())
  
# Commit your changes in the database
conn.commit()
  
# Closing the connection
conn.close()

Ausgabe:

[(3, 'Anamika', 'Banglore'), (2, 'Anushka', 'Hyderabad'), (1, 'Babita', 'Bihar'), (5, 'Radha', 'Chandigarh'), ( 4, 'Sanaya', 'Pune')]