Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

SQL(SELECT QUERY LANGUAGE)

Presentasi serupa


Presentasi berjudul: "SQL(SELECT QUERY LANGUAGE)"— Transcript presentasi:

1 SQL(SELECT QUERY LANGUAGE)
Andri Suryadi, M.Kom

2 Buat tabel sederhana dengan access / yang lainnya
Contoh tabel mahasiswa Field KODE_POS, walaupun berisi angka, tetapi menggunakan tipe data teks. Ini karena kita tidak akan menggunakan kode pos dalam perhitungan matematis (apakah Anda akan diminta menghitung rata-rata kode pos?). Kita harus menggunakan tipe data Number untuk field JUMLAH_SAUDARA dan NEM_SMA karena kita dapat melakukan perhitungan matematis menggunakan field ini, misalnya untuk menghitung rata-rata jumlah saudara seluruh mahassiwa. NEM_SMA adalah bilangan real (pecahan) dan JUMLAH_SAUDARA adalah bilangan bulat, tetapi sama-sama direpresentasikan dengan tipe data Number. Nama Field Jenis Data NIM Text NAMA ALAMAT KODE_POS TGL_LAHIR Date PENGHASILAN_ORTU Currency JUMLAH_SAUDARA Number NEM_SMA

3 Buat database

4 Tabel terbentuk

5 SQL SQL sesuai dengan namanya adalah sebuah bahasa. Bahasa ini telah menjadi standard semua RDBMS sebagai alat komunikasi dengan database. Bahasa ini mendefinisikan cara untuk mengambil, menyisipkan, mengupdate dan menghapus data pada sebuah database (fungsi sebagai DML=Data Manipulation Languange). Selain itu SQL juga mendefinisikan cara membuat tabel, merubah definisi kolom, membuat indeks, menghapus tabel (fungsi sebagai DDL = Data Definition Languange)   American National Standard Institute (ANSI) telah mengeluarkan standard untuk SQL agar menjadi bahasa universal untuk RDMBS. Sayangnya, banyak implementasi RDBMS yang tidak sesuai dengan standard. Sumber : Yudi Wibisono (UPI)

6 SQL SQL untuk Mengambil Data SQL untuk Mengupdate Data SQL untuk Menghapus Data SQL untuk Menambah Data SQL untuk Fungsi Agregasi Fungsi-Fungsi Standard SQL di Access Fungsi Matematika Fungsi String Lebih Jauh dengan SQL Parameter Query Select Distinct Order By Between IN dan NOT IN Sub Query Group By dan Having Karakter “&” untuk pengabungan string

7 SELECT [Fields yang diiginkan] FROM [nama tabel] WHERE [Kondisi]
SQL Mengambil Data Query jenis ini adalah query yang paling sering digunakan. Jika kita menggunakan tabel PRIBADI_MAHASISWA pada contoh sebelumnya. Query ini dapat digunakan untuk menjawab pertanyaan: SELECT [Fields yang diiginkan] FROM [nama tabel] WHERE [Kondisi]

8 SQL Mengambil Data Pertanyaan : Tampilkan semua data
SELECT * FROM PRIBADI_MAHASISWA Tampilkan nim dan nama mahasiswa saja. SELECT NIM,NAMA FROM PRIBADI_MAHASISWA Tampilkan nim mahasiswa yang NEM_SMA –nya lebih dari 5.0 SELECT NIM FROM PRIBADI_MAHASISWA WHERE NEM_SMA>5.0 Tampilkan nama mahasiswa yang mengandung huruf “UDI” (bisa UDIN, BUDI, RUDI, YUDI) SELECT NAMA FROM PRIBADI_MAHASISWA WHERE NAMA LIKE “*UDI*” Tampilkan mahasiswa yang memiliki saudara lebih dari 5 dan penghasilan orang tuanya kurang dari Rp SELECT NAMA FROM PRIBADI_MAHASISWA WHERE (JUMLAH_SAUDARA>5) AND (PENGHASILAN_ORTU < )

9 SQL untuk Mengupdate Data
UPDATE [nama tabel] SET [field = nilai yang baru] WHERE [kondisi yang harus dipenuhi dari record yang akan diupdate] Misalnya Anda ingin mengupdate data penghasilan ortu mahasiswa “BUDI” dengan menguranginya Rp dan menambah kata-kata BDG pada alamatnya. SQL untuk melakukan hal tersebut adalah: UPDATE PRIBADI_MAHASISWA SET PENGHASILAN_ORTU = PENGHASILAN_ORTU – , ALAMAT = ALAMAT + ' BDG' WHERE NAMA = 'BUDI'

10 SQL untuk Menghapus Data
DELETE FROM [nama tabel] WHERE [kondisi] DELETE menghapus record yang memenuhi kondisi di bagian WHERE. DELETE FROM PRIBADI_MAHASISWA WHERE NAMA = ‘BUDI’ OR NAMA = ‘UDIN’

11 SQL untuk Fungsi Agregasi
Fungsi agregasi adalah fungsi yang digunakan dalam sebuah kelompok record. Ada lima fungsi agregasi: AVG( ) : Menghitung rata-rata MIN( ): Menghitung nilai minimum MAX ( ): Menghitung nilai maksimum SUM () : Menghitung jumlah COUNT (*): Menghitung jumlah record

12 SQL untuk Fungsi Agregasi (lanjutan)
Menghitung rata-rata PENGHASILAN_ORTU : SELECT AVG(PENGHASILAN_ORTU) from PRIBADI_MAHASISWA  Mencari nilai minimum dan maksimum NEM_SMA : SELECT MIN(NEM_SMA) as nilai_terendah, MAX(NEM_SMA) as nilai_tertinggi from PRIBADI_MAHASISWA Lihat bahwa dalam query di atas kita menggunakan dua fungsi agregasi sekaligus. Penggunaan “as” seperti dalam “as nilai_terendah” adalah untuk memberikan nama kolom. Mencari total jumlah saudara: SELECT SUM(JUMLAH_SAUDARA) as [Jumlah Saudara]from PRIBADI_MAHASISWA Pada query di atas, digunakan kurung siku “[ ]“ karena kita menggunakan nama kolom yang mengandung spasi. Mencari total jumlah record pada tabel PRIBADI_MAHASISWA SELECT COUNT(*) as [Jumlah Record]from PRIBADI_MAHASISWA

13 SQL untuk Menambah Data
INSERT INTO [nama tabel (field1,field2,field3,…) ] VALUES [(nilai1,nilai2,nilai3, dst..)] Contoh input data mahasiswa INSERT INTO PRIBADI_MAHASISWA(NIM,NAMA,ALAMAT,KODE_POS,TGL_LAHIR,PENGHASIL AN_ORTU,JUMLAH_SAUDARA,NEM_SMA) VALUES ('33333','BUDI','Buah batu','40132','7/7/2003', ,3,50)

14 Fungsi-Fungsi Standard SQL di Access
Fungsi Matematika Contoh penggunaan dalam query: SELECT SIN(ANGKA1), TAN(ANGKA1), COS(ANGKA1) FROM TEST Fungsi Keterangan SIN(x), COS(x), TAN(x), x dalam derajat radian ATN(x) Menghasilkan nilai dalam derajat radian ABS(x) Menghasilkan nilai absolut dari x EXP(x) Menghasilkan e pangkat x FIX(x) Menghilangkan pecahan. Contoh FIX(2.5) = 2 SQR(x) Menghasilkan akar. Contoh: SQR(4) = 2 INT(x) Sama dengan FIX, perbedaannya, untuk nilai negatif, INT menghasilkan nilai integer terdekat yang lebih kecil atau sama dengan x. Contoh: FIX(-8.4) = -8 INT(-8.4) = 9 LOG(x) Natural logaritma dari x. Untuk basis 10, gunakan rumus= Log10 = Log(X) / Log(10#)   RND(x) Menghasilkan bilangan random SGN(x) Menghasilkan: 1: jika x > 0 0: jika x =0 -1: jika x <0

15 Fungsi-Fungsi Standard SQL di Access
Fungsi String Contoh dalam query  SELECT LEFT(NIM,3) FROM PRIBADI_MAHASISWA Fungsi Keterangan LEFT(string,y) Mengcopy sejumlah y karakter dari string. LEFT(“BUDI”,2) = “BU” LEN(string) Menghasilkan panjang string MID(string,start,panjang) Menghasilkan copy dari “string” mulai dari posisi “start” sejumlah “panjang”. Contoh: MID(“BUDIMAN”,3,2) = “DI” RIGHT(string,y) Sama dengan left, tetapi dari kanan.

16 Lebih Jauh dengan SQL 1 Parameter Query
Misalnya kita memiliki query sebagai berikut SELECT * FROM PRIBADI_MAHASISWA WHERE NIM = ‘1111’ Masalah pada query di atas adalah bagaimana jika ingin data mahasiswa dengan NIM lain? Apakah setiap kali harus diubah melalui query-nya? Bagaimana kalau calon usernya tidak mengerti query? Maka dapat digunakan parameter sbb : SELECT * FROM PRIBADI_MAHASISWAWHERE NIM = Mohon masukan NIM mahasiswa

17 Lebih Jauh dengan SQL 2. Select Distinct
Select Distinct menghilangkan duplikasi record dari query. Contoh: Kita akan menampilkan KODE_POS sesuai pada tabel mahasiswa. Dengan SQL dibawah hal tersebut dapat dilakukan dengan mudah select KODE_POS from PRIBADI_MAHASISWA Masalahnya, jika ada beberapa mahasisa mempunyai kode pos yang sama akan muncul dupilikasi. Untuk menghilangkan duplikasi tersebut gunakan SQL berikut: select distinct KODE_POS from PRIBADI_MAHASISWA

18 Lebih Jauh dengan SQL 3. Order By
Order by digunakan untuk mengurutkan data berdasarkan field tertentu baik terurut dari kecil ke besar (ascending) maupun sebaliknya (descending) Contoh: Jika Anda ingin menampilkan data mahasiswa yang terurut berdasarkan NAMA, SQL-nya akan tampak sebagai berikut: select * from PRIBADI_MAHASISWA order by NAMA Bagaimana jika kita ingin mengurutkannya mulai dari besar ke kecil? Gunakan DESC select *fromPRIBADI_MAHASISWAorder by NAMA DESC Catatan: Jika arah pengurutan (ASC/DESC) tidak disebutkan maka secara default yang digunakan adalah ascending (ASC)

19 Lebih Jauh dengan SQL 4. Between
Between digunakan pada bagian where untuk mencari suatu rentang Contoh: (misalnya kita menambahkan field RANKIN_SPMB di tabel PRIBADI_MAHASISWA) select * from PRIBADI_MAHASISWA where RANKING_SPMB between 20 AND 22; select *from PRIBADI_MAHASISWA where TGL_LAHIR Between DATE('1/1/1980') And CDATE('31/12/1980'); Catatan: CDATE adalah fungsi konversi dari string ke tipe date.

20 Lebih Jauh dengan SQL 5. IN dan NOT IN
IN dan NOT IN adalah fungsi himpunan. Contoh: Kita ingin menampilkan SELECT * FROM PRIBADI_MAHASISWA WHERE NIM in ('1111','2222'); Artinya hanya mahasiswa dengan NIM 1111 dan 2222 saja yang ditampilkan. SQL berikut akan menghasilkan kebalikannya: SELECT * FROM PRIBADI_MAHASISWA WHERE NIM not in ('1111','2222');

21 Lebih Jauh dengan SQL 6. Sub Query
IN dan NOT IN juga dapat digunakan dalam SQL yang mengandung subquery. Contoh: Misalkan kita memiliki tabel MAHASISWA_KASUS yang berisi daftar mahasiswa yang berkasus akademik. Maka query berikut akan menampilkan data di tabel PRIBADI_MAHASISWA yang NIM-nya ada di tabel MAHASISWA_KASUS: SELECT * FROM PRIBADI_MAHASISWA WHERE NIM IN (select NIM from MAHASISWA_KASUS);

22 Lebih Jauh dengan SQL 7. Group By dan Having
KODE_POS JUMLAH 40164 2 40212 1 40222 4 7. Group By dan Having Group by digunakan dalam query yang menggunakan fungsi agregasi. Misalkan kita ingin menghitung jumlah mahasiswa yang berada pada suatu kode pos tertentu. Hasil yang kita inginkan adalah sbb: SELECT KODE_POS, COUNT(*) AS JUMLAH FROM PRIBADI_MAHASISWA GROUP BY KODE_POS Group by pada query di atas mengelompokkan penghitungan (count(*)) berdasarkan KODE_POS.  Having digunakan untuk memfilter berdasarkan fungsi agregasi. Misalnya kita hanya ingin menampilkan KODE_POS yang memiliki jumlah 2 maka query di atas dapat diubah menjadi: SELECT KODE_POS, COUNT(*) AS JUMLAH FROM PRIBADI_MAHASISWA GROUP BY KODE_POS HAVING COUNT(*) = 2

23 Lebih Jauh dengan SQL 8. Karakter “&” untuk pengabungan string
“&” digunakan untuk menggabung field hasil query select. Contoh: SELECT ALAMAT&" "&KODE_POS as ALAMAT_LENGKAP FROM PRIBADI_MAHASISWA Hasilnya adalah satu kolom (“Alamat Lengkap”) yang terdiri atas gabungan string dan kodepos

24 Tugas Silahkan Coba sendiri


Download ppt "SQL(SELECT QUERY LANGUAGE)"

Presentasi serupa


Iklan oleh Google