آموزش عبارت MySQL – OrderBy در پایتون

2 سال پیش

آموزش عبارت MySQL – OrderBy در پایتون

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش عبارت MySQL – OrderBy در پایتون خواهیم پرداخت.

پیشنهاد ویژه : پکیج آموزش پروژه محور پایتون

هنگام واکشی داده ها با استفاده از کوئری SELECT، می توانید نتایج را به ترتیب دلخواه (صعودی یا نزولی) با استفاده از عبارت OrderBy مرتب کنید. به‌طور پیش‌فرض، این بند نتایج را به ترتیب صعودی مرتب می‌کند، اگر لازم است آنها را به ترتیب نزولی مرتب کنید، باید از «DESC» به صراحت استفاده کنید.

 

در زیر سینتکس SELECT ستونی لیست آمده است

FROM table_name
[WHERE condition]
[ORDER BY column1, column2,.. columnN] [ASC | DESC]; of the ORDER BY clause:

 

مثال

فرض کنید جدولی در MySQL با نام EMPLOYEES به صورت – ایجاد کرده ایم

mysql> CREATE TABLE Employee(

mysql> CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT
);
Query OK, 0 rows affected (0.36 sec)

 

و اگر ۴ رکورد را با استفاده از دستورات INSERT به عنوان – در آن درج کرده باشیم

mysql> INSERT INTO EMPLOYEE VALUES
   ('Krishna', 'Sharma', 19, 'M', 2000),
   ('Raj', 'Kandukuri', 20, 'M', 7000),
   ('Ramya', 'Ramapriya', 25, 'F', 5000),
   ('Mac', 'Mohan', 26, 'M', 2000);

 

عبارت زیر محتویات جدول EMPLOYEE را به ترتیب افزایش سن بازیابی می کند.

mysql> SELECT * FROM EMPLOYEE ORDER BY AGE;
+------------+-----------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE  | SEX  | INCOME |
+------------+-----------+------+------+--------+
| Krishna    | Sharma    |   19 |    M |   2000 |
| Raj        | Kandukuri |   20 |    M |   7000 |
| Ramya      | Ramapriya |   25 |    F |   5000 |
| Mac        | Mohan     |   26 |    M |   2000 |
+------------+-----------+------+------+--------+
۴ rows in set (0.04 sec)

 

همچنین می توانید داده ها را به ترتیب نزولی با استفاده از DESC به صورت – بازیابی کنید

mysql> SELECT * FROM EMPLOYEE ORDER BY FIRST_NAME, INCOME DESC;
+------------+-----------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE  | SEX  | INCOME |
+------------+-----------+------+------+--------+
| Krishna    | Sharma    |   19 |    M |   2000 |
| Mac        | Mohan     |   26 |    M |   2000 |
| Raj        | Kandukuri |   20 |    M |   7000 |
| Ramya      | Ramapriya |   25 |    F |   5000 |
+------------+-----------+------+------+--------+
۴ rows in set (0.00 sec)

 

عبارت ORDER BY با استفاده از پایتون

برای بازیابی محتویات یک جدول به ترتیب خاص، متد ()ظexecute را روی شی مکان نما فراخوانی کنید و عبارت SELECT را همراه با عبارت ORDER BY به عنوان پارامتر به آن ارسال کنید.

مثال

در مثال زیر جدولی با نام و کارمند ایجاد می‌کنیم، آن را پر می‌کنیم و رکوردهای آن را به ترتیب (صعودی) سنشان با استفاده از عبارت ORDER BY بازیابی می‌کنیم.

import mysql.connector

#establishing the connection
conn = mysql.connector.connect(
   user='root', password='password', host='127.0.0.1', database='mydb')

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Doping EMPLOYEE table if already exists.
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
sql = '''CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT
)'''
cursor.execute(sql)

#Populating the table
insert_stmt = "INSERT INTO EMPLOYEE (FIRST_NAME, LAST_NAME, AGE, SEX, INCOME) 
   VALUES (%s, %s, %s, %s, %s)"

data = [('Krishna', 'Sharma', 26, 'M', 2000), 
   ('Raj', 'Kandukuri', 20, 'M', 7000),
   ('Ramya', 'Ramapriya', 29, 'F', 5000),
   ('Mac', 'Mohan', 26, 'M', 2000)]
cursor.executemany(insert_stmt, data)
conn.commit()

#Retrieving specific records using the ORDER BY clause
cursor.execute("SELECT * from EMPLOYEE ORDER BY AGE")
print(cursor.fetchall())

#Closing the connection
conn.close()

 

خروجی

[('Raj', 'Kandukuri', 20, 'M', 7000.0), 
   ('Krishna', 'Sharma', 26, 'M', 2000.0), 
   ('Mac', 'Mohan', 26, 'M', 2000.0), 
   ('Ramya', 'Ramapriya', 29, 'F', 5000.0)
]

 

به همین ترتیب می توانید با استفاده از عبارت ORDER BY داده ها را از جدول به ترتیب نزولی بازیابی کنید.

مثال

import mysql.connector

#establishing the connection
conn = mysql.connector.connect(
   user='root', password='password', host='127.0.0.1', database='mydb')

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Retrieving specific records using the ORDERBY clause
cursor.execute("SELECT * from EMPLOYEE ORDER BY INCOME DESC")
print(cursor.fetchall())

#Closing the connection
conn.close()

 

خروجی

[('Raj', 'Kandukuri', 20, 'M', 7000.0), 
   ('Ramya', 'Ramapriya', 29, 'F', 5000.0), 
   ('Krishna', 'Sharma', 26, 'M', 2000.0), 
   ('Mac', 'Mohan', 26, 'M', 2000.0)
]

 

منبع.

 

لیست جلسات قبل آموزش دسترسی به داده پایتون 

  1. آموزش دسترسی به داده پایتون 
  2. آموزش پایگاه MySQL در پایتون
  3. آموزش اتصال به پایگاه داده MySQL در پایتون
  4. آموزش ایجاد پایگاه داده MySQL در پایتون
  5. آموزش ایجاد جدول MySQL در پایتون
  6. آموزش درج داده MySQL در پایتون
  7. آموزش انتخاب داده MySQL در پایتون
  8. آموزش عبارت MySQL – Where در پایتون
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه