MySQL Pernyataan SELECT dengan Contoh

⚡ Ringkasan Cerdas

The MySQL Pernyataan SELECT mengambil baris dari satu atau lebih tabel, dan setiap contoh di bawah ini dijalankan terhadap basis data sampel myflix, mulai dari kueri bintang biasa hingga ekspresi, alias kolom, dan fungsi string.

  • 🔎 Tujuan Inti: Perintah SELECT mengambil baris data yang tersimpan yang sesuai dengan kriteria tertentu, baik dari command prompt maupun dari PHP. Python, dan bahasa lainnya.
  • 🧩 Urutan Sintaksis: SELECT, FROM, WHERE, GROUP BY, HAVING, dan ORDER BY harus muncul dalam urutan tetap tersebut.
  • Jalan Pintas Bintang: SELECT * FROM `members`; mengembalikan semua kolom, sedangkan penamaan kolom secara eksplisit membuat hasil set lebih kecil dan lebih cepat.
  • 🔗 Ekspresi: Fungsi Concat() menggabungkan nilai kolom, dan LEFT() memangkas karakter, sehingga kolom yang dihitung muncul langsung dalam hasil.
  • Alias ​​Kolom: Kata kunci opsional AS mengubah nama ekspresi apa pun, mengganti judul yang tidak terbaca seperti Concat(`title`) dengan label yang jelas.
  • Perbandingan Meja Kerja: MySQL Workbench menghasilkan kueri secara visual, namun pernyataan SELECT yang ditulis tangan tetap diperlukan untuk pengambilan data yang kompleks dan tepat.

Apa itu Query SELECT? MySQL?

Kueri SELECT digunakan untuk mengambil data dari MySQL basis data. Basis data menyimpan data untuk diambil kemudian. Tujuan dari MySQL Perintah SELECT digunakan untuk mengambil satu atau lebih baris dari tabel basis data yang sesuai dengan kriteria tertentu. Kueri SELECT dapat digunakan dalam bahasa skrip seperti PHP atau Ruby, atau Anda dapat menjalankannya dari command prompt.

PILIH kueri masuk MySQL

Karena SELECT adalah perintah yang paling sering Anda jalankan, ada baiknya mempelajari sintaksnya sebelum menyentuh data sampel.

Sintaks Pernyataan SQL SELECT

SELECT adalah perintah SQL yang paling sering digunakan, dan memiliki sintaks umum sebagai berikut:

SELECT [DISTINCT|ALL] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition] [GROUP BY fieldName(s)] [HAVING condition] [ORDER BY fieldName(s)];

SINI

  • MEMILIH adalah kata kunci SQL yang memungkinkan database mengetahui bahwa Anda ingin mengambil data.
  • [BERBEDA | SEMUA] adalah kata kunci opsional yang menyempurnakan hasil yang dikembalikan dari pernyataan SQL SELECT. Jika tidak ada yang ditentukan, maka ALL dianggap sebagai nilai default.
  • {*| [fieldExpression [AS nama baru]} Setidaknya satu bagian harus ditentukan. “*” memilih semua kolom dari nama tabel yang ditentukan; fieldExpression melakukan perhitungan pada kolom yang ditentukan, seperti menambahkan angka atau menggabungkan dua kolom string menjadi satu.
  • DARI tableName wajib diisi dan harus berisi setidaknya satu tabel. Beberapa tabel harus dipisahkan menggunakan koma atau digabungkan menggunakan kata kunci JOIN.
  • MANA Kondisi bersifat opsional. Kondisi ini menentukan kriteria dalam kumpulan hasil yang dikembalikan dari kueri.
  • KELOMPOK OLEH digunakan untuk mengumpulkan catatan yang memiliki nilai bidang yang sama.
  • MEMILIKI Kondisi digunakan untuk menentukan kriteria saat bekerja dengan kata kunci GROUP BY.
  • DIPESAN OLEH digunakan untuk menentukan urutan kumpulan hasil.

*

Simbol bintang (*) memilih semua kolom dalam sebuah tabel. Pernyataan SELECT sederhana terlihat seperti yang ditunjukkan di bawah ini.

SELECT * FROM `members`;

Pernyataan di atas memilih semua kolom dari tabel anggota. Tanda titik koma adalah penanda akhir pernyataan. Ini tidak wajib, tetapi mengakhiri pernyataan Anda dengan cara ini dianggap sebagai praktik yang baik.

Pilih DISTINCT dan LIMIT di MySQL

Dua kata kunci opsional dalam sintaksis perlu diperhatikan lebih detail, karena pemula akan menemui kata kunci ini begitu tabel mulai berkembang.

BERBEDA Menghapus baris duplikat dari hasil kueri. Tabel film menyimpan beberapa film yang dirilis pada tahun 2007, sehingga kueri biasa akan mengulang tahun tersebut. DISTINCT mengembalikan setiap nilai sekali.

SELECT DISTINCT `year_released` FROM `movies`;

MEMBATASI membatasi jumlah baris yang dikembalikan, yang melindungi klien dari kueri yang jika tidak akan menarik jutaan catatan.

SELECT * FROM `movies` LIMIT 5;
Kata kunci Apa yang dilakukannya Kapan menggunakannya?
SEMUA (default) Mengembalikan semua baris yang cocok, termasuk duplikat. Menghitung atau membuat daftar catatan mentah
BERBEDA Menggabungkan baris duplikat menjadi satu. Membangun daftar nilai unik
MEMBATASI Hanya mengembalikan N baris pertama. Melihat pratinjau data atau menomori hasil

Setelah sintaksnya ditetapkan, basis data sampel menghidupkan klausa-klausa ini.

Contoh Praktis Pernyataan SELECT

Klik untuk mendownload Database MyFlix digunakan untuk contoh-contoh praktis.

Anda dapat mempelajari cara mengimpor file .sql ke dalam MySQL Workbench.

Contoh-contoh tersebut dilakukan pada dua tabel berikut.

Tabel 1: anggota tabel

Nomor keanggotaan nama lengkap jenis kelamin tanggal lahir alamat fisik alamat pos_ nomor_kontak email
1 Janet Jones Perempuan 21-07-1980 Plot Jalan Pertama No 4 Tas Pribadi 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Perempuan 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Pria 12-07-1989 Jalan ke-3 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Perempuan 14-02-1984 Jalan ke-2 23 NULL NULL NULL

Tabel 2: bioskop tabel

film_id judul direktur tahun_dirilis kategori_id
1 Bajak Laut Karibia 4 Rob Marshall 2011 1
2 Melupakan Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Code Nama Hitam Edgar Jimz 2010 NULL
5 Gadis Kecil Ayah NULL 2007 8
6 malaikat dan iblis NULL 2007 6
7 Da Vinci Code NULL 2007 6
9 Honey mooners John Schultz 2005 8
16 67% Bersalah NULL 2012 NULL

Mendapatkan Daftar Anggota

Misalkan kita menginginkan daftar semua anggota perpustakaan yang terdaftar dari basis data kita. Kita akan menggunakan skrip yang ditunjukkan di bawah ini untuk melakukannya.

SELECT * FROM `members`;

Menjalankan skrip di MySQL Workbench menghasilkan hasil sebagai berikut.

Nomor keanggotaan nama lengkap jenis kelamin tanggal lahir alamat fisik alamat pos_ nomor_kontak email
1 Janet Jones Perempuan 21-07-1980 Plot Jalan Pertama No 4 Tas Pribadi 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Perempuan 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Pria 12-07-1989 Jalan ke-3 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Perempuan 14-02-1984 Jalan ke-2 23 NULL NULL NULL

Kueri tersebut mengembalikan semua baris dan kolom dari tabel anggota.

Memilih Kolom Tertentu

Misalkan kita hanya tertarik pada kolom full_names, gender, physical_address, dan email. Skrip berikut ini akan mewujudkannya.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

Menjalankan skrip di MySQL Workbench menghasilkan hasil sebagai berikut.

nama lengkap jenis kelamin alamat fisik email
Janet Jones Perempuan Plot Jalan Pertama No 4 janetjones@yagoo.cm
Janet Smith Jones Perempuan Melrose 123 jj@fstreet.com
Robert Phil Pria Jalan ke-3 34 rm@tstreet.com
Gloria Williams Perempuan Jalan ke-2 23 NULL

Mendapatkan Daftar Film Dengan Ekspresi

Ekspresi juga dapat digunakan dalam pernyataan SELECT. Misalnya, kita menginginkan daftar film dengan judul dan nama sutradara dalam satu kolom, nama sutradara dalam tanda kurung, ditambah tahun rilis film tersebut. Skrip berikut melakukan hal itu.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

SINI

  • Fungsi Concat() MySQL Fungsi ini menggabungkan nilai-nilai kolom.
  • Baris “Concat(`title`, ' (', `director`, ')')” mengambil judul, menambahkan tanda kurung buka diikuti nama sutradara, lalu menambahkan tanda kurung tutup.
  • Bagian-bagian string dipisahkan menggunakan koma di dalam fungsi Concat().

Menjalankan skrip di MySQL Workbench menghasilkan kumpulan hasil berikut.

Concat(`judul`, ' (', `direktur`, ')') tahun_dirilis
Bajak Laut Karibia 4 ( Rob Marshall) 2011
Melupakan Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Code Nama Black (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey mooners (John Schultz) 2005
NULL 2012

Catatan: Fungsi Concat() mengembalikan NULL ketika salah satu argumennya adalah NULL, itulah sebabnya film tanpa sutradara menampilkan NULL di atas.

Nama Bidang Alias

Contoh di atas mengembalikan kode penggabungan sebagai nama kolom. Untuk menggunakan nama kolom yang lebih deskriptif dalam hasil set, terapkan alias kolom. Sintaks dasarnya adalah sebagai berikut.

SELECT `column_name|value|expression` [AS] `alias_name`;

SINI

  • “SELECT `column_name|value|expression`” adalah pernyataan SELECT biasa, yang dapat berupa nama kolom, nilai, atau ekspresi.
  • "[SEBAGAI]" adalah kata kunci opsional sebelum nama alias.
  • “`nama_alias`” adalah alias yang dikembalikan dalam kumpulan hasil sebagai nama bidang.

Kueri yang sama dengan nama kolom yang lebih bermakna:

SELECT Concat(`title`, ' (', `director`, ')') AS `Concat`, `year_released` FROM `movies`;

Kita mendapatkan hasil sebagai berikut.

concat tahun_dirilis
Bajak Laut Karibia 4 ( Rob Marshall) 2011
Melupakan Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Code Nama Black (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey mooners (John Schultz) 2005
NULL 2012

Mendapatkan Daftar Anggota yang Menampilkan Tahun Lahir

Misalkan kita menginginkan daftar semua anggota yang menampilkan nomor keanggotaan, nama lengkap, dan tahun lahir. Kita dapat menggunakan fungsi string LEFT untuk mengekstraknya.tractahun kelahiran diambil dari kolom tanggal lahir.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

SINI

  • “KIRI(`tanggal_lahir`,4)” itu Fungsi senar KIRI menerima tanggal lahir sebagai parameter dan hanya mengembalikan 4 karakter dari sebelah kiri.
  • “SEBAGAI `tahun_kelahiran`” adalah nama alias kolom muncul dalam hasil kami. Itu Kata kunci AS bersifat opsionalAnda bisa menghilangkannya dan kueri tetap berfungsi.

Menjalankan kueri di MySQL Pengujian Workbench terhadap myflixdb memberikan hasil seperti yang ditunjukkan di bawah ini.

Nomor keanggotaan nama lengkap tahun kelahiran
1 Janet Jones 1980
2 Janet Smith Jones 1980
3 Robert Phil 1989
4 Gloria Williams 1984

Kueri yang ditulis tangan hanyalah salah satu cara untuk mendapatkan kumpulan hasil. Workbench juga dapat membuat pernyataan tersebut untuk Anda.

Menggunakan SQL MySQL Workbench

Kami sekarang akan menggunakan MySQL Workbench untuk menghasilkan skrip yang menampilkan semua nama kolom dari tabel kategori kita.

1. Klik kanan pada tabel Kategori. Klik “Pilih Baris – Batasi 1000”.

2. MySQL Workbench secara otomatis membuat kueri SQL dan menempelkannya di editor.

3. Hasil kueri ditampilkan dalam tabel di bawah editor.

SQL menggunakan MySQL Workbench

Seperti yang terlihat pada tangkapan layar, kami tidak menulis pernyataan SELECT tersebut sendiri. MySQL Workbench yang membuatnya untuk kami.

Mengapa Menggunakan Perintah SQL SELECT Padahal Kita Memilikinya? MySQL Meja kerja?

Anda mungkin bertanya-tanya mengapa Anda harus mempelajari perintah SQL SELECT padahal ada alat seperti ini... MySQL Workbench memberikan hasil yang sama tanpa perlu pengetahuan tentang bahasa SQL. Jalan pintas itu memang dimungkinkan, tetapi... mempelajari perintah SELECT memberi Anda lebih banyak fleksibilitas ke kontrol di atas Anda Pernyataan SQL SELECT.

MySQL Meja kerja termasuk dalam kategori “Kueri dengan Contoh” (QBE) tools. Tujuannya adalah untuk menghasilkan pernyataan SQL lebih cepat dan meningkatkan produktivitas pengguna.

Mempelajari perintah SQL SELECT memungkinkan Anda untuk membuat pertanyaan yang kompleks yang tidak mudah dihasilkan oleh utilitas Query by Example seperti MySQL Meja kerja.

Untuk meningkatkan produktivitas, Anda dapat menghasilkan kode di MySQL Workbench, kemudian menyesuaikan untuk memenuhi kebutuhan AndaHal itu hanya mungkin terjadi setelah Anda memahami cara kerja pernyataan SQL.

Memahami MySQL PILIH pernyataan

Pertanyaan Umum Demo Slot

Biasanya ya. SELECT * membaca setiap kolom, termasuk kolom teks besar dan kolom blob yang mungkin tidak Anda perlukan, dan itu memblokir indeks penutup. Penamaan kolom membuat hasil set lebih kecil dan kueri lebih cepat.

Kata kunci seperti SELECT dan FROM tidak peka terhadap huruf besar/kecil. Perbandingan string mengikuti kolasi kolom, sehingga kolasi yang tidak peka terhadap huruf besar/kecil seperti utf8mb4_0900_ai_ci memperlakukan “Janet” dan “janet” sebagai sama.

Penyebab umumnya adalah indeks yang hilang. Jalankan EXPLAIN sebelum kueri untuk melihat apakah MySQL Melakukan pemindaian tabel penuh, kemudian mengindeks kolom yang difilter atau digabungkan dan hanya mengembalikan baris yang Anda butuhkan.

Ya. Asisten Text-to-SQL mengkonversi permintaan biasa menjadi pernyataan SELECT setelah mengetahui skema Anda. RevPerhatikan penggabungan dan filter yang dihasilkan, karena model AI dapat menciptakan nama kolom yang tidak ada.

Tidak. AI membuat draf kueri dengan cepat, tetapi Anda tetap perlu memverifikasi logika, penggabungan (join), dan kinerjanya. MySQL WorkbenchMemahami perintah SELECT memungkinkan Anda mendeteksi hasil yang salah sebelum mencapai tahap produksi.

Ringkaslah postingan ini dengan: