CONTOH PERINTAH SQL
Perbedaannya terletak pada penempatan penulisannya, jika menggunakan klausaNOT maka kata NOT ditulis setelah Klausa WHERE sebelum nama field, tapi jikamenggunakan operator aritmatika maka tanda <> (tidak sama dengan) disimpansetelah nama field dan sebelum kriteria data yang dicari.12.8 Menggunakan Klausa INPerintah ini sama dengan operator OR yang artinya tampilkanlah data pertama ataudata kedua, dan seterusnya. Contoh :
SELECT * FROM Barang WHERE KodeBrg IN('BRG001','BRG006')
Fungsi : menampilkan seluruh kolom dengan kode Barang BRG001 atau BRG006
Perintah di atas sama dengan perintah di bawah ini :
SELECT * FROM Barang WHERE KodeBrg=‘BRG001’ OR KodeBrg=‘BRG006’ SELECT * FROM Barang WHERE NOT KodeBrg IN(‘BRG001’,’BRG006’)
Fungsi : menampilkan seluruh kolom dengan kode Barang yang bukan BRG001 danBRG006
SELECT * FROM Barang WHERE NOT JumlahBrg IN(60)
Fungsi : menampilkan seluruh kolom yang jumlahnya bukan 60
Menggunakan Operator LIKE dan Wildcard (% _ [] )Operator ini digunakan untuk mencari data dengan menuliskan salah satu ataubeberapa karakter yang diinginkan. Operator ini sangat bermanfaat dalammelakukan pencarian data dengan tingkat spesifikasi yang cukup tinggi, karenadengan Wildcard Anda dapat menemukan satu huruf yang diinginkan, tidak peduliapakah huruf tersebut terletak di tengah, di depan atau di belakang sebuah itemdata. Bahkan dengan Wildcard tersebut Anda dapat mengabaikan satu ataubeberapa karakter yang tidak diinginkan.
Select * From Barang Where Namabrg Like '%E%'
Fungsi : menampilkan seluruh kolom di tabel Barang dengan nama Barang yangmengandung huruf ‘E’ dan huruf di depan atau di belakangnya apa saja.
Perhatikanlah perintah di atas dengan baik…!. Penulisan huruf E diapit dengantanda % (persen) yang artinya mengabaikan huruf yang berada di depan dan dibelakangnya, dengan demikian jika pada kolom nama Barang terdapat data yangmengandung huruf E, maka data tersebut akan ditampilkan.Penulisan klausa LIKE dalam VB.NET boleh menggunakan tanda ‘ atau tanda ‘‘,tetapi Anda tidak dibenarkan menuliskan dengan dua lambang yang berbeda yaitudi depan dengan tanda ‘ tetapi di belakang dengan tanda “ dan sebaliknya.
SELECT * FROM Barang WHERE NamaBrg LIKE ‘K%’
Fungsi: menampilkan seluruh kolom di tabel Barang dengan nama Barang yanghuruf depannya ‘K’ dan selanjutnya huruf apa saja.
SELECT * FROM Barang WHERE NamaBrg LIKE ‘%S’
Fungsi : menampilkan seluruh kolom di tabel Barang dengan nama Barang yanghuruf belakangnya ‘S’ dan sebelumnya huruf apa saja.
Wildcard dengan tanda % dalam SQL digunakan untuk mengabaikan huruf apa sajayang ada di depan atau di belakangnya dengan jumlah huruf yang tidak terbatas.Perintah di atas (tanda %) dapat digunakan untuk mencari data yang mengandunghuruf apa saja yang diinginkan yang posisinya di tengah, dan dapat juga digunakanuntuk mencari huruf depan atau huruf belakang (huruf terakhir).
SELECT * FROM Barang WHERE NamaBrg LIKE ‘_U%’
Fungsi : menampilkan seluruh kolom di tabel Barang dengan nama Barang yanghuruf depannya (satu huruf) apa saja, huruf keduanya ‘U’ dan huruf selanjutnyaapa saja.
SELECT * FROM Barang WHERE NamaBrg LIKE ‘__M*’
Fungsi : menampilkan seluruh kolom di tabel Barang dengan nama Barang yangdua huruf depannya apa saja, huruf ketiganya ‘M’ dan huruf selanjutnya apa saja.
Tanda _ digunakan untuk mengabaikan sejumlah karakter. Jika Anda menulis tanda _ sebanyak dua buah berarti Anda mengabaikan dua huruf. Jadi pengabaian jumlahkarakter tergantung pada berapa jumlah tanda _ (underscore) yang ditulis dan diposisi mana tanda tersebut diletakkan.
SELECT * FROM Barang WHERE NamaBrg LIKE ‘[KS]%’
Fungsi : menampilkan seluruh kolom dimana nama depannya diawali dengan huruf ‘K’ atau huruf ‘S’ dan nama belakangnya apa saja.
Dengan menggunakan tanda [ ] berarti Anda mencari huruf dengan pilihantergantung huruf apa yang dicantumkan dalam tanda kurung siku tersebut. padacontoh di atas, karena tanda [ ] diakhiri dengan tanda % yang diletakkan di luar,maka artinya Anda mencari huruf awal dengan pilihan huruf yang ada pada tanda [] dengan huruf berikutnya apa saja.12.10 Menggunakan Perhitungan MatematisPada kesempatan ini akan dicoba menggunakan perintah matematis. Pada tabelBarang tidak terdapat
Total Harga
sebagai hasil perkalian antara Harga denganJumlah, namun dengan perintah SQL dapat ditampilkan hasil perhitunganmatematis tersebut.
SELECT KodeBrg,NamaBrg,HargaJual,JumlahBrg,HargaJual*JumlahBrg AS TotalFROM Barang
Fungsi : menampilkan seluruh kolom di tabel Barang dimana HARGA Jual * Jumlahbarang sebagai field (kolom) baru yaitu TOTAL
SELECT *,HargaJual*JumlahBrg AS Total FROM BarangSELECT HargaJual,JumlahBrg,HargaJual*JumlahBrg AS Total FROM Barang WHEREJumlah>6012.11 Mengelompokan Data Dengan klausa Group BySELECT HargaBeli,Sum(HargaBeli) AS Gabung FROM Barang GROUP BY HargaBeli
Fungsi ;
menampilkan kolom Harga beli yang jumlahnya sama digabungkandisimpan dalam field (kolom) baru bernama Gabung
SELECT HargaBeli, Count(HargaBeli) AS Jumlah FROM Barang GROUP BY HargaBeli
Fungsi : kelompokan Harga beli dan hitung berapa jumlah harga beli yang samadimana hasil perhitungannya harga beli yang sama disimpan pada field barubernama Jumlah.
SELECT Count(*) AS JumlahData FROM Barang
Perintah ini digunakan untuk menghitung jumlah data (baris) dari seluruh field.
SELECT Count(*) AS JumlahData FROM Barang WHERE JumlahBrg >70
Perintah ini digunakan untuk menghitung jumlah data dari seluruh field dengan jumlah barangnya >70.
SELECT Max(HargaJual) AS Terbesar FROM Barang
Fungsi : menampilkan nilai terbesar dari kolom Harga jual yang ada di tabel Barangdan disimpan dalam sebuah kolom baru dengan nama ‘Terbesar’.
SELECT Min(HargaBeli) AS Terkecil FROM BarangSELECT Count(*) AS Jumlah, Max(HargaBeli) AS Terbesar, Min(HargaJual) ASTerkecil FROM Barang
Perintah di atas digunakan untuk menampilkan jumlah seluruh data yang disimpandalam field baru yaitu ‘Jumlah’, harga beli terbesar disimpan dalam field ‘Terbesar’ dan harga jual terkecil pada field ‘Terkecil’.12.12 Menggunakan Data TanggalMenampilkan data tanggal dapat dilakukan dengan beberapa cara, yaitu CDATE danDATEVALUE dan #mm-dd-yy#. Tabel yang mengandung data tanggal adalah tabelpenjualan.
SELECT * FROM Penjualan WHERE CDATE (Tanggal)=‘16/07/07’
Fungsi : menampilkan data Penjualan yang terjadi pada Tanggal 16-Juli-2007
.Sebelum field Tanggal ditulis CDATE, hal ini dilakukan karena data Tanggal yangdiketik berupa karakter, maka Anda harus mengubah data Tanggal yang ada padatabel Penjualan ke bentuk string.
Cara lain yang dapat dilakukan adalah mengubah bentuk karakter Tanggal menjadibentuk nilai Tanggal yaitu dengan perintah DATEVALUE.SELECT * FROM Penjualan WHERE Tanggal=DateValue(‘21/07/07’)Perintah tersebut mempunyai arti sebaliknya dari perintah sebelumnya, padaperintah CDATE berarti mengubah bentuk data Tanggal di dalam tabel Penjualanmenjadi bentuk karakter, tetapi dengan perintah DATEVALUE berarti mengubahbentuk text SQL menjadi bentuk nilai Tanggal karena data Tanggal yang ada dalamtabel nilai
default
-nya adalah date dengan format dd/mm/yy.
Select Tanggal From Penjualan Where Tanggal=#07-10-07#SELECT * FROM Penjualan WHERE CDATE (Tanggal)>‘10/07/07’ AND CDATE(Tanggal) <‘20/07/07’
Fungsi : menampilkan data Penjualan dengan Tanggal lebih besar dari Tanggal 16 Juli 2007 dan lebih kecil dari Tanggal 20 Juli 2007.
Mengambil Data (Hari) Tanggal
SELECT * FROM Penjualan WHERE CDATE (DAY (Tanggal))<=17
Fungsi : menampilkan data Penjualan dengan Tanggal faktur lebih kecil samadengan Tanggal 17
Mengambil Data Bulan
SELECT * FROM Penjualan WHERE CDATE (MONTH (Tanggal))=06
Fungsi : menampilkan data Penjualan yang dilakukan pada bulan Juni.
SELECT * FROM Penjualan WHERE CDATE (DAY (Tanggal))>17 AND CDATE(MONTH (Tanggal))=07
Fungsi : Tampilkanlah data Penjualan dengan Tanggal faktur lebih besar dari Tanggal 17 dan bulan transaksi sama dengan Juli.
Mengambil Data Tahun
SELECT * FROM Penjualan WHERE CDATE (YEAR (Tanggal))=07
Fungsi : menampilkan data Penjualan yang dilakukan pada TAHUN 2007.
Menggabungkan TabelDengan perintah SQL Anda dapat mengambil data dari beberapa tabel. Cara inidirasakan sangat berguna untuk merelasikan data yang diinginkan. Diingatkankembali bahwa dalam buku ini hanya ada empat tabel yaitu tabel Barang, Kasir,Penjualan dan Detail dan Anda harus mengingat kembali nama-nama field yang adapada tiap tabel tersebut. Dalam kondisi penggabungan ini, field yang dijadikanrelasi jangan ditulis setelah SELECT sebelum WHERE karena akan memunculkanpesan kesalahan, kecuali jika ditulis dengan tanda * atau degan menyebut namatabel induknya.
Contoh syntax yang salah:
Select
KODEBRG
,NamaBrg,JmlJual from Barang,Detail where kodebrg=”BRG001” Select NamaKsr,
KODEKSR
, Tanggal from penjualan,kasir where kodeksr=”KSR02” Contoh syntax yang benar:SELECT * FROM Penjualan,Kasir
Fungsi : menampilkan seluruh field dari tabel Penjualan dan tabel Kasir
SELECT * FROM Penjualan,Kasir WHERE Penjualan.KodeKsr=Kasir.KodeKsr
Fungsi : menampilkan seluruh field dari tabel Penjualan dan tabel Kasir dengankode Kasir yang ada di tabel Penjualan sama dengan kode Kasir yang ada di tabel Kasir.
SELECT NamaBrg,HargaJual,JmlJual FROM Detail,Barang WHEREDetail.KodeBrg=Barang.KodeBrg
Fungsi : menampilkan nama Barang, harga jual, jumlah jual dari tabel Detail, dantabel Barang yang kode Barang di tabel Detail sama dengan kode Barang di tabel Barang.
SELECT Distinct NamaBrg,HargaJual,JmlJual, HargaJual*JmlJual AS Total FROMDetail Inner Join Barang On Detail.KodeBrg=Barang.KodeBrg
Fungsi : menampilkan satu saja nama Barang, harga jual, jumlah jual dan Total (sebagai hasil perkalian antara harga jual dengan jumlah jual) dari tabel Detail dantabel Barang yang kode Barang di tabel Detail sama dengan kode Barang di tabel Barang.
Hal yang sama seperti di atas dapat dilakukan dengan perintah di bawah ini :
SELECT Distinct NamaBrg,HargaJual,JmlJual,HargaJual*JmlJual AS Total FROMPenjualan,Detail,Barang WHERE Detail.KodeBrg=Barang.KodeBrgSELECT Faktur,NamaBrg,HargaJual,JmlJual,HargaJual*JmlJual AS Total FROMDetail Inner Join Barang On Detail.KodeBrg=Barang.KodeBrg WHEREfaktur='0707110001'
Fungsi : menampilkan faktur, nama Barang, harga jual, jumlah jual dan Total (sebagai hasil perkalian) dari tabel Detail dan tabel Barang yang kode Barangnyasama di tabel Detail dan tabel Barang dan nomor fakturnya 0707110001.
SELECTBarang.NamaBrg,Barang.HargaJual,Detail.JmlJual,Barang.HargaJual*Detail.JmlJualas Total FROM Barang,Detail WHERE faktur='0707210001' andDetail.KodeBrg=Barang.KodeBrg
Fungsi : menampilkan nama Barang, harga jual, jumlah jual dan Total dengannomor faktur 0707210001
SELECT Distinct NamaBrg,HargaJual,JmlJual, HargaJual*JmlJual AS Total FROMDetail,Penjualan,Barang WHERE Detail.KodeBrg=Barang.KodeBrg andKodeKsr='KSR03'
Fungsi : menampilkan nama Barang, harga jual,jumlah jual dan Total dengan kodeKasir KSR03