Python MySQL - จำกัด
ในขณะที่ดึงเร็กคอร์ดหากคุณต้องการ จำกัด ด้วยจำนวนเฉพาะคุณสามารถทำได้โดยใช้ประโยค LIMIT ของ MYSQL
ตัวอย่าง
สมมติว่าเราได้สร้างตารางใน MySQL โดยใช้ชื่อ EMPLOYEES เป็น -
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)
และถ้าเราใส่ 4 ระเบียนเข้าไปโดยใช้คำสั่ง 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);
คำสั่ง SQL ต่อไปนี้จะดึงข้อมูลสองระเบียนแรกของตารางพนักงานโดยใช้ส่วนคำสั่ง LIMIT
SELECT * FROM EMPLOYEE LIMIT 2;
+------------+-----------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE | SEX | INCOME |
+------------+-----------+------+------+--------+
| Krishna | Sharma | 19 | M | 2000 |
| Raj | Kandukuri | 20 | M | 7000 |
+------------+-----------+------+------+--------+
2 rows in set (0.00 sec)
จำกัด ประโยคโดยใช้ python
หากคุณเรียกใช้ไฟล์ execute() วิธีการบนวัตถุเคอร์เซอร์โดยการส่งแบบสอบถาม SELECT พร้อมกับส่วนคำสั่ง LIMIT คุณสามารถเรียกจำนวนระเบียนที่ต้องการ
ในการวางตารางจากฐานข้อมูล MYSQL โดยใช้ python ให้เรียกใช้ไฟล์ execute() วิธีการบนวัตถุเคอร์เซอร์และส่งผ่านคำสั่ง drop เป็นพารามิเตอร์ไป
ตัวอย่าง
ตัวอย่าง python ต่อไปนี้จะสร้างและเติมข้อมูลตารางที่มีชื่อ EMPLOYEE และโดยใช้ส่วน LIMIT จะดึงข้อมูลสองระเบียนแรกของตาราง
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 single row
sql = '''SELECT * from EMPLOYEE LIMIT 2'''
#Executing the query
cursor.execute(sql)
#Fetching the data
result = cursor.fetchall();
print(result)
#Closing the connection
conn.close()
เอาต์พุต
[('Krishna', 'Sharma', 26, 'M', 2000.0), ('Raj', 'Kandukuri', 20, 'M', 7000.0)]
จำกัด ด้วย OFFSET
หากคุณต้องการ จำกัด ระเบียนโดยเริ่มจากระเบียนที่ n (ไม่ใช่ 1 st ) คุณสามารถทำได้โดยใช้ OFFSET ร่วมกับ LIMIT
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 single row
sql = '''SELECT * from EMPLOYEE LIMIT 2 OFFSET 2'''
#Executing the query
cursor.execute(sql)
#Fetching the data
result = cursor.fetchall();
print(result)
#Closing the connection
conn.close()
เอาต์พุต
[('Ramya', 'Ramapriya', 29, 'F', 5000.0), ('Mac', 'Mohan', 26, 'M', 2000.0)]