| SELECT [tb1].[nama_kolom1], [tb2].[nama_kolom2], . . . FROM [nama_tabel1] [tb1], [nama_tabel2] [tb2] WHERE [kondisi_join] [operator_boolean] [kondisi_select] ORDER BY [nama_kolom_order] GROUP BY [nama_kolom_group]; |
Keterangan :
| tb | : | Alias dari [nama_tabel1] |
| nama_kolom | : | Nama kolom yang akan ditampilkan |
| kondisi_join | : | Jika pada klausa FORM terdapat dua tabel atau lebih maka harus terdapat kondisi ini yaitu menjoinkan tabel-table pada klausa tersebut |
| operator_boolean | : | Operator-operator untuk kondisi_join seperti AND dan OR |
| kondisi_select | : | Kondisi tambahan untuk menyempurnakan operasi SELECT ini. Biasanya menggunakan operasi perbandingan, seperti : >, <,>=, <=, BETWEEN, <> |
| nama_kolom_order | : | Hasil SELECT ingin di urutkan berdasarkan nama_kolom tersebut. |
| nama_kolom_group | : | Hasil SELECT ingin dikelompokkan berdasarkan nama_kolom. Jadi semua record yang bernilai sama akan dikeluarkan hanyasatu record saja. Yang perlu diperhatikan adalah semua kolom yang di-SELECT harus di GROUP BY -kan. |
Sebelum diperjelas dengan contoh maka sebaiknya kita mengisi data untuk tabel-tabel yang telah kita buat pada artikel Create Table “Sistem Belajar-Mengajar” – (Analisa & Desain). Script untuk mengisi data silahkan download di sini.
1. Menampilkan semua siswa kelas I dengan diurutkan berdasarkan nama siswa tersebut.
| SELECT NAMA, ALAMAT FROM TEST.MURID WHERE KELAS_ID = ‘I’ /*[kondisi_select]*/ ORDER BY NAMA, NIS; /*[nama_kolom_order]*/ |
2. Menampilkan guru-guru yang mengajar mata pelajaran biologi.
| SELECT g.NIG, b.NAMA FROM TEST.GURU g, TEST.BELAJAR b WHERE g.NIG = b.NIG /*[kondisi_join]*/ AND b.KODE_MP = ‘DA0007′ /*[kondisi_select]*/ GROUP BY g.NIG, g.NAMA; /*[nama_kolom_group]*/ |
Silahkan anda mencoba contoh-contoh semisal di atas. Coba pula dengan menghilangkansyntax ORDER BY dan GROUP BY dengan amati apa yang terjadi dan mengapa bisa terjadi.
Tidak ada komentar:
Posting Komentar