Strctured Query Language BASIS DATA
SQL Query Berikut adalah syntax dari SQL-SELECT SELECT [DISTINCT] select_list FROM table_source [WHERE search_condition] [GROUP BY group_by_expression] [HAVING search_condition] [ORDER BY order_expression [ASC | DESC] ]
SQL Query SELECT, INTO, FROM, WHERE, GROUP BY, HAVING DAN ORDER BY kata kunci (keyword) yang harus disertakan jika kita membutuhkannya di dalam pengolahan data select_list, new_table_, table_source, search_condition, group_by_expression, order_expression isian yang bisa kita ubah berdasarkan kebutuhan kita Kurung kotak [ ] bagian tersebut boleh disertakan atau tidak, tergantung dari kebutuhan Urutan syntax untuk kata kunci (keyword), misalnya ORDER BY terletak di setelah GROUP BY, menunjukkan bahwa keyword harus disusun berdasarkan urutan tersebut, jika keduanya disertakan, ORDER BY tidak boleh ditulis mendahului GROUP BY
Database
select_list SELECT * FROM Anggota adalah kolom-kolom yang didefinisikan sebagai hasil dari proses query Menampilkan keseluruhan field Untuk menampilkan keseluruhan field dari tabel-tabel yang didefinisikan, digunakan *. Misalnya, untuk menampilkan seluruh field dari tabel Anggota, perintahnya: SELECT * FROM Anggota
select_list b. Menampilkan kolom-kolom tertentu Kolom-kolom yang dipilih berupa ekspresi, yang mana ekspresi tersebut bisa berupa: field tabel (biasanya) konstanta operasi dan fungsi Antara kolom satu dengan lainnya dipisahkan dengan tanda koma (,). Jika merupakan field tabel, maka judul kolom adalah nama field tersebut. Selain itu, jika tidak diberi nama, judul kolom akan kosong.
select_list Contoh SELECT 1, nama, alamat FROM Anggota menampilkan nama dan alamat Anggota SELECT nama, alamat FROM Anggota Yang terdapat nilai konstanta, menampilkan nilai 1 untuk setiap baris pada kolom pertama dari query sebelumnya SELECT 1, nama, alamat FROM Anggota Yang terdapat ekspresi fungsi dari query sebelumnya, yakni menampilkan nama dalam bentuk huruf kapital: SELECT UPPER(nama), alamat FROM Anggota
select_list c. Mengubah judul kolom Kolom-kolom yang dipilih bisa diberi judul tertentu sesuai dengan keinginan kita. Ada 2 cara untuk mengubah judul kolom: Menggunakan syntax: ekspresi AS judul_kolom Ini merupakan cara standar yang dipakai pada banyak sistem database. Menggunakan syntax: judul_kolom = ekspresi
select_list Contoh Beberapa query pada point b sebelumnya, diberi judul kolom sbb: menampilkan nama dan alamat Anggota SELECT nama AS NamaAnggota, alamat AS AlamatAnggota FROM Anggota menampilkan nama dalam bentuk huruf kapital dg judul kolom NamaKapital: SELECT NamaKapital=UPPER(nama), alamat FROM Anggota
select_list d. Menyertakan nama tabel atau alias Jika kita memasukkan sebuah field tabel di dalam sebuah ekspresi kolom, kita bisa menyertakan nama tabel Sebelum nama fieldnya yang dipisah dengan tanda titik: nama_tabel.nama_field Untuk apa? Untuk mempermudah analisa pembuatan query Untuk membedakan kepemilikan sebuah field di dalam query yang menyertakan lebih dari satu tabel. Sebab bisa saja terjadi dua buah tabel memiliki nama field yang sama
select_list Contoh untuk sebuah contoh query sebelumnya, jika disertakan nama tabel adalah sbb: SELECT NamaKapital=UPPER(Anggota.nama), Anggota.alamat FROM Anggota
DISTINCT Digunakan apabila kita ingin menghilangkan duplikasi dari hasil query (hasil query yang sama ditampilkan sekali) SELECT [DISTINCT] select_list FROM table_source
DISTINCT Contoh untuk menampilkan nomor-nomor anggota yang sedang meminjam atau belum mengembalikan: NoAnggota ID001 ID002 ID003 SELECT NoAnggota FROM Peminjaman pada hasil query tersebut terdapat NoAnggota yang ditampilkan lebih dari sekali. Untuk meniadakan duplikasi, querynya adalah sbb: NoAnggota ID001 ID002 ID003 SELECT DISTINCT NoAnggota FROM Peminjaman
table_source Adalah sumber data dari query Bisa merupakan tabel ataupun view Tabel yang disertakan bisa lebih dari satu. Jika lebih dari satu, dalam penulisan dipisah dengan koma.
Pemberian nama lain (alias) Sebuah tabel bisa diberi nama lain (alias), yang mana hal ini digunakan untuk memperpendek nama atau untuk membedakan field jika sebuah query mengambil tabel yang sama lebih dari satu Nama alias ditulis setelah nama tabel yang bersangkutan
Pemberian nama lain (alias) Contoh 1. Alias yang digunakan untuk memperpendek nama tabel: SELECT NamaKapital=UPPER(ang.nama), ang.alamat FROM Anggota ang Nama tabel Anggota di atas diberi nama alias ang. Sehingga untuk menampilkan fieldnya, cukup disertakan aliasnya saja.
Pemberian nama lain (alias) Contoh 2. Alias yang dipergunakan untuk Query dengan tabel sumber data yang sama. Query untuk mencari Anggota yang tanggal lahirnya sama: SELECT NamaKapital=UPPER(ang.nama), ang.alamat FROM Anggota ang Kasus diatas diperlukan dua buah alias untuk sebuah tabel yang sama, karena untuk proses tersebut, diperlukan pembandingan terhadap tabel yang sama. Oleh karena itu, tabel anggota perlu dianggap sebagai 2 sumber data yang berbeda dengan memberi nama alias ang1 dan ang2 yang kemudian dibandingkan mana saja yang memiliki field tanggal lahir yang sama.