MySQL ialah salah satu sistem pengurusan pangkalan data hubungan yang paling biasa digunakan pada masa ini Ia menyediakan pelbagai kaedah penapisan data untuk mendapatkan data yang diperlukan daripada pangkalan data. Artikel ini akan berkongsi kaedah penapisan data yang biasa digunakan dalam MySQL untuk rujukan dan pembelajaran pembaca.
1. Pernyataan WHERE
Pernyataan WHERE ialah kaedah penapisan data yang paling asas dan biasa digunakan dalam MySQL Ia menapis data yang diperlukan daripada jadual berdasarkan syarat yang ditetapkan. Contohnya:
SELECT * FROM table_name WHERE column_name = value;
Antaranya, table_name ialah nama jadual yang perlu disoal, column_name ialah nama lajur yang perlu ditapis, dan nilai ialah nilai yang perlu ditapis. Pernyataan ini akan mengembalikan semua data dalam jadual table_name di mana nilai lajur_nama_lajur adalah sama dengan nilai.
Pernyataan WHERE juga boleh menggunakan pengendali bersyarat lain, seperti lebih besar daripada (>), kurang daripada (<), lebih besar daripada atau sama dengan (>=), kurang daripada atau sama dengan (< ;=), tidak sama dengan (!= ), SUKA, dsb.
2. ORDER BY pernyataan
Pernyataan ORDER BY digunakan untuk mengisih hasil pertanyaan mengikut lajur atau ungkapan yang ditentukan. Contohnya:
SELECT * FROM table_name ORDER BY column_name ASC/DESC;
Antaranya, table_name ialah nama jadual yang perlu disoal, column_name ialah nama lajur yang perlu diisih, ASC bermaksud tertib menaik, dan DESC bermaksud tertib menurun. Pernyataan ini akan mengembalikan semua data dalam jadual table_name, diisih dalam tertib menaik atau menurun lajur column_name.
PENYATAAN ORDER BY juga boleh mengisih mengikut berbilang lajur pada masa yang sama, contohnya:
SELECT * FROM table_name ORDER BY column_1 ASC, column_2 DESC;
Pernyataan ini akan diisih dalam susunan menaik bagi lajur_1 Jika lajur_1 adalah sama, ia akan diisih dalam susunan menaik bagi lajur_2 Isih dalam tertib menurun.
3. Penyata GROUP BY
Pernyataan GROUP BY digunakan untuk mengumpulkan hasil pertanyaan mengikut satu atau lebih lajur dan mengira nilai agregat setiap kumpulan. Contohnya:
SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;
Antaranya, table_name ialah nama jadual yang perlu disoal, column_name ialah nama lajur yang perlu dikumpulkan dan COUNT(*) bermaksud mengira bilangan baris dalam setiap kumpulan. Pernyataan ini akan mengembalikan bilangan baris dalam setiap kumpulan dalam jadual table_name yang dikumpulkan mengikut lajur column_name.
Pernyataan GROUP BY juga boleh menggunakan fungsi agregat lain, seperti MAX, MIN, AVG, SUM, dll., contohnya:
SELECT column_name, MAX(value) FROM table_name GROUP BY column_name;
Pernyataan ini akan mengembalikan jadual table_name selepas mengumpulkan mengikut column_name lajur nilai maksimum lajur nilai kumpulan.
4. Pernyataan HAVING
Pernyataan HAVING adalah serupa dengan pernyataan WHERE, tetapi digunakan untuk menapis kumpulan selepas pernyataan GROUP BY. Contohnya:
SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name HAVING COUNT(*) > 10;
Antaranya, table_name ialah nama jadual yang perlu disoal, column_name ialah nama lajur yang perlu dikumpulkan dan COUNT(*) bermaksud mengira bilangan baris dalam setiap kumpulan. Pernyataan ini akan mengembalikan setiap set data dalam jadual table_name yang dihimpunkan mengikut lajur_nama_lajur dan mempunyai bilangan baris lebih daripada 10.
PERNYATAAN HAVING boleh menggunakan operator bersyarat WHERE biasa, seperti lebih besar daripada (>), kurang daripada (<), lebih besar daripada atau sama dengan (>=), kurang daripada atau sama dengan (< =), tidak sama dengan (! =), SUKA, dsb.
5. LIMIT penyataan
Pernyataan LIMIT digunakan untuk mengehadkan bilangan baris yang dikembalikan oleh hasil pertanyaan. Contohnya:
SELECT * FROM table_name LIMIT 10;
Antaranya, table_name ialah nama jadual yang ingin ditanya, dan LIMIT 10 bermakna hanya 10 baris pertama data akan dikembalikan. Pernyataan ini akan mengembalikan 10 baris pertama data dalam jadual table_name. Pernyataan
LIMIT juga boleh menentukan kedudukan permulaan dan bilangan baris data yang dikembalikan, contohnya:
SELECT * FROM table_name LIMIT 10 OFFSET 20;
Pernyataan ini akan bermula dari baris 21 dalam jadual table_name dan mengembalikan 10 baris data.
6. Kata kunci DISTINCT
Kata kunci DISTINCT digunakan untuk mengembalikan hasil pertanyaan selepas penyahduplikasi. Contohnya:
SELECT DISTINCT column_name FROM table_name;
Antaranya, table_name ialah nama jadual yang perlu disoal dan column_name ialah nama lajur yang perlu dinyahduplikasi. Pernyataan ini akan mengembalikan semua nilai dalam lajur column_name dalam jadual table_name selepas penyahduaan.
7. Kata kunci IN
Kata kunci IN digunakan untuk menentukan senarai nilai dan mengembalikan hasil pertanyaan yang memenuhi sebarang nilai dalam senarai. Contohnya:
SELECT * FROM table_name WHERE column_name IN (value1, value2, value3);
Antaranya, table_name ialah nama jadual yang perlu disoal, column_name ialah nama lajur yang perlu ditapis dan value1, value2 dan value3 ialah nilai yang perlu dipadankan. Pernyataan ini akan mengembalikan semua data dalam jadual table_name yang mana lajur column_name sepadan dengan mana-mana satu nilai1, nilai2 dan nilai3.
8. NOT IN kata kunci
Kata kunci NOT IN adalah bertentangan dengan kata kunci IN dan mengembalikan hasil pertanyaan yang tidak memenuhi sebarang nilai dalam senarai. Contohnya:
SELECT * FROM table_name WHERE column_name NOT IN (value1, value2, value3);
Antaranya, table_name ialah nama jadual yang perlu disoal, column_name ialah nama lajur yang perlu ditapis dan value1, value2 dan value3 ialah nilai yang perlu dipadankan. Pernyataan ini akan mengembalikan semua data dalam jadual table_name di mana lajur column_name tidak sepadan dengan mana-mana nilai 1, value2 dan value3.
Di atas adalah kaedah penapisan data yang biasa digunakan dalam MySQL Kombinasi kaedah yang berbeza boleh dipilih dalam senario yang berbeza. Pembaca boleh menggunakannya secara fleksibel mengikut keperluan sebenar untuk meningkatkan kecekapan dan ketepatan penapisan data.
Atas ialah kandungan terperinci Perkongsian kaedah penapisan data dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!