Python MySQL - Pilih Data
Anda dapat mengambil / mengambil data dari tabel di MySQL menggunakan kueri SELECT. Kueri / pernyataan ini mengembalikan konten dari tabel yang ditentukan dalam bentuk tabel dan disebut sebagai kumpulan hasil.
Sintaksis
Berikut ini adalah sintaks dari query SELECT -
SELECT column1, column2, columnN FROM table_name;
Contoh
Asumsikan kita telah membuat tabel di MySQL dengan nama cricketers_data sebagai -
CREATE TABLE cricketers_data(
First_Name VARCHAR(255),
Last_Name VARCHAR(255),
Date_Of_Birth date,
Place_Of_Birth VARCHAR(255),
Country VARCHAR(255)
);
Dan jika kita telah memasukkan 5 record ke dalamnya menggunakan pernyataan INSERT sebagai -
insert into cricketers_data values('Shikhar', 'Dhawan', DATE('1981-12-05'), 'Delhi', 'India');
insert into cricketers_data values('Jonathan', 'Trott', DATE('1981-04-22'), 'CapeTown', 'SouthAfrica');
insert into cricketers_data values('Kumara', 'Sangakkara', DATE('1977-10-27'), 'Matale', 'Srilanka');
insert into cricketers_data values('Virat', 'Kohli', DATE('1988-11-05'), 'Delhi', 'India');
insert into cricketers_data values('Rohit', 'Sharma', DATE('1987-04-30'), 'Nagpur', 'India');
Kueri berikut mengambil nilai FIRST_NAME dan Negara dari tabel.
mysql> select FIRST_NAME, Country from cricketers_data;
+------------+-------------+
| FIRST_NAME | Country |
+------------+-------------+
| Shikhar | India |
| Jonathan | SouthAfrica |
| Kumara | Srilanka |
| Virat | India |
| Rohit | India |
+------------+-------------+
5 rows in set (0.00 sec)
Anda juga dapat mengambil semua nilai dari setiap record menggunakan * nama kolom yang dimasukkan sebagai -
mysql> SELECT * from cricketers_data;
+------------+------------+---------------+----------------+-------------+
| First_Name | Last_Name | Date_Of_Birth | Place_Of_Birth | Country |
+------------+------------+---------------+----------------+-------------+
| Shikhar | Dhawan | 1981-12-05 | Delhi | India |
| Jonathan | Trott | 1981-04-22 | CapeTown | SouthAfrica |
| Kumara | Sangakkara | 1977-10-27 | Matale | Srilanka |
| Virat | Kohli | 1988-11-05 | Delhi | India |
| Rohit | Sharma | 1987-04-30 | Nagpur | India |
+------------+------------+---------------+----------------+-------------+
5 rows in set (0.00 sec)
Membaca Data Dari Tabel MYSQL Menggunakan Python
Operasi BACA pada database apa pun berarti mengambil beberapa informasi berguna dari database. Anda dapat mengambil data dari MYSQL menggunakanfetch() metode yang disediakan oleh mysql-connector-python.
Kelas cursor.MySQLCursor menyediakan tiga metode yaitufetchall(), fetchmany() dan, fetchone() dimana,
Itu fetchall()metode mengambil semua baris dalam kumpulan hasil kueri dan mengembalikannya sebagai daftar tupel. (Jika kita menjalankan ini setelah mengambil beberapa baris, ia mengembalikan yang tersisa).
Itu fetchone() metode mengambil baris berikutnya dalam hasil kueri dan mengembalikannya sebagai tupel.
Itu fetchmany() metode ini mirip dengan fetchone () tetapi, metode ini mengambil kumpulan baris berikutnya dalam kumpulan hasil kueri, bukan satu baris.
Note - Kumpulan hasil adalah objek yang dikembalikan saat objek kursor digunakan untuk membuat kueri tabel.
rowcount - Ini adalah atribut hanya-baca dan mengembalikan jumlah baris yang dipengaruhi oleh metode execute ().
Contoh
Contoh berikut mengambil semua baris dari tabel EMPLOYEE menggunakan query SELECT dan dari hasil yang diperoleh set awalnya, kita mengambil baris pertama menggunakan metode fetchone () dan kemudian mengambil baris yang tersisa menggunakan metode fetchall ().
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'''
#Executing the query
cursor.execute(sql)
#Fetching 1st row from the table
result = cursor.fetchone();
print(result)
#Fetching 1st row from the table
result = cursor.fetchall();
print(result)
#Closing the connection
conn.close()
Keluaran
('Krishna', 'Sharma', 19, 'M', 2000.0)
[('Raj', 'Kandukuri', 20, 'M', 7000.0), ('Ramya', 'Ramapriya', 25, 'M', 5000.0)]
Contoh berikut mengambil dua baris pertama dari tabel EMPLOYEE menggunakan metode fetchmany ().
Contoh
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'''
#Executing the query
cursor.execute(sql)
#Fetching 1st row from the table
result = cursor.fetchmany(size =2);
print(result)
#Closing the connection
conn.close()
Keluaran
[('Krishna', 'Sharma', 19, 'M', 2000.0), ('Raj', 'Kandukuri', 20, 'M', 7000.0)]