25
SQL 1.Di sini saya akan membuat fungsi SQL untuk Mengkonfersikan dari Km ke Meter 2. Kali ini saya membuat fungsi untuk mencari nama dosen dari nip 112 .. untuk melihat perintah fungsion nya bisa dilihat di bawah ini sekaligus hasilnyya; 3. pada tugas nomor 3 ini adalah penggunaan dari if,else ,pada fungsi ini saya membuat harga harga dari makanan . pada intinya fungsi ini menampilkan harga dari makannan yang kita inputkan;

4 pada nomer ini kita akan mencari nama dosen yang berasal ... · untuk melihat perintah fungsion nya bisa dilihat di bawah ini ... dosen.dos_nip Group by jadwal.dos_nip,dosen

Embed Size (px)

Citation preview

SQL

1.Di sini saya akan membuat fungsi SQL untuk Mengkonfersikan dari Km ke Meter

2. Kali ini saya membuat fungsi untuk mencari nama dosen dari nip 112 ..

untuk melihat perintah fungsion nya bisa dilihat di bawah ini sekaligus hasilnyya;

3. pada tugas nomor 3 ini adalah penggunaan dari if,else ,pada fungsi ini saya membuat harga –

harga dari makanan .

pada intinya fungsi ini menampilkan harga dari makannan yang kita inputkan;

4 pada nomer ini kita akan mencari nama dosen yang berasal dari kota kota tertentu;

5. Pada pembahasan nomer 5 ini kita akan membuat Trigger () yang berfungsi untuk Meng-

Ngecek kemudian Memodifikasi sesuai dengan fungsi yang kita masukkan ,dalam hal ini kita

akan mengecilkan huruf (Lower case) pada kolom nama.

Fungsi PL/SQL

Membuat fungsi konversi suhu dari Fahrenheit ke derajat celcius dengan rumus konversi sebagai

berikut : celcius=(nilai Fahrenheit-32)*5/9

Kemudian menjalankannya dengan SELECT.

Membuat fungsi untuk mencari ipk mahasiswa dari tabel berdasarkan nama mahasiswa.

Kemudian menjalankannya dengan SELECT.

Membuat fungsi untuk menghitung nilai dengan menggunakan bahasa pl/sql.

Kemudian menjalankannya dengan SELECT.

Membuat fungsi mencari alamat berdasarkan nama dalam suatu tabel.

SQL AGREGATE AND VIEW (tugas)

Tutorial SQL Agregate MIN,MAX,SUM,COUNT,HAVING,GROUP BY

1 . tampilkan seluruh data yang ada pada suatu tabel misalnya:mahasiswa.

2 . masukkan SQL ( SQL Injection) kedalam SQL shell yang berisikan

SELECT MIN(dos_nip),MAX(dos_nip),AVG(dos_nip) FROM jadwal;

Hasilnya akan seperti ini :

AVG : berfungsi menjumlah banyaknya data pada kolom dan membaginya sebanyak itu pula.

MIN : mencari nilai terkecil.

MAX : mencari data yang terbesar.

count : menghitung banyaknya data.

3. Memunculkan data yang lebih dari atau kurang dari X, Misalnya lebih dari 5,

SELECT SUM(jadwal.dos_nip), dosen.d0s_nama from jadwal,dosen where jadwal.dos_nip =

dosen.dos_nip Group by jadwal.dos_nip,dosen.dos_nama HAVING SUM(jadwal.dos_nip) >111;

Hasilnya akan seperti ini

4. Cara menampilkan jumlah nama dosen berdasarkan jadwal .

SELECT dosen.dos_nama AS nama, COUNT(*) AS jumlah FROM jadwal,dosen WHERE

dosen.dos_nip = jadwal.dos_nip GROUP BY dosen.dos_nama,jadwal ;

5. Menampilkan dosen yang jumlah mahasiswanya paling kecil dan Menampilkan jumlahnya

SELECT COUNT(jadwal.dos_nip) AS jumlah, dosen.dos_nip,dosen.dos_nama FROM

dosen,jadwal WHERE jadwal.dos_nip = dosen.dos_nip GROUP BY dossen.dos_nip,

jadwal.dos_nip;

6. Menampilkan seperti yang nomor 3 tadi dengan persyaratan jumlah mahasiswa yang kurang

dari 2 saja yang ditampilkan.

SELECT dosen.dos_nama AS nama, COUNT(*) AS jumlah FROM dosen,jadwal WHERE

dosen.dos_nip = jadwal.dos_nip GROUP BY dosen.dos_nama,jadwal HAVING COUNT (*) <2

;

7. Cara membuat view untuk query penampilan data jadwal, mat_kul dan dosen. yang diAmbil

berdasarkan nip dosen, nama dosen kelas,nama mata kuliah,sks,pukul

Create Penjadwalan AS SELECT

jadwal.dos_nip,dosen.dos_nama,jadwal.kelas,mat_kul.nama_mk, mat_kul.sks,jadwal.pukul

FROM jadwal,dosen,mat_kul WHERE jadwal.dos_nip = dosen.dos_nip and dosen.kode_mk =

mat_kul.kode_mk

Setelah Berhasil kita bisa memanggil Tabel View yang tadi dengan cara biasa :

Select * from penjadwalan;

SQL Agregate and View (laporan)

Tutorial SQL Agregate MIN,MAX,SUM,COUNT,HAVING,GRUP BY

1 . tampilkan seluruh data yang ada pada suatu tabel misalnya :mahasiswa

2 . masukkan SQL ( SQL Injection) kedalam SQL shell .

SELECT MIN(mhs_nim),MAX(mhs_nim),AVG(mhs_nim) FROM mahasiswa;

Hasilnya akan seperti ini :

AVG : berfungsi menjumlah banyaknya data pada kolom dan membaginya sebanyak itu pula.

MIN : mencari nilai terkecil.

MAX : mencari data yang terbesar.

count : menghitung banyaknya data.

3. Memunculkan data yang lebih dari atau kurang dari X, Misalnya lebih dari 5,

SELECT SUM(mhs_nim),msh_nama from mahasiswa Group by mhs_nim HAVING

SUM(mhs_nim) >5;

Hasilnya akan seperti ini :

4. Cara menampilkan jumlah mahasiswa berdasarkan fakultas .

SELECT fak_nama AS fakultas, COUNT(*) AS jumlah FROM mahasiswa,fakultas WHERE

fakultas.fak_kode = Mahasiswa.fak_kode GROUP BY fak_nama ;

5. Menampilkan fakultas yang jumlah mahasiswanya paling kecil dan Menampilkan jumlahnya

SELECT COUNT(mahasiswa.fak_kode) AS jumlah, fak_nama FROM mahasiswa ,fakultas

WHERE mahasiswa.fak_kode = fakultas.fak_kode GROUP BY fak_nama;

6. Menampilkan seperti yang nomor 3 tadi dengan persyaratan jumlah mahasiswa yang lebih

dari 2 saja yang ditampilkan.

SELECT fak_nama AS fakultas, COUNT(*) AS jumlah FROM mahasiswa,fakultas WHERE

fakultas.fak_kode = Mahasiswa.fak_kode GROUP BY fak_nama HAVING COUNT (*) >2 ;

7. Cara membuat view untuk query penampilan data mahasiswa, fakultas dan jurusan. yang

diAmbil berdasarkan nim, nama mahasiswa, nama fakultas, nama jurusan.

Create Rahasia AS SELECT

mhs_nim,msh_nama,jurusan.jur_nama,fakultas.fak_nama,gender,mhs_alamat, FROM

mahasiswa,jurusan,fakultas WHERE mahasiswa.jur_kode = jurusan.Jur_kode and

mahasiswa.fak_kode = fakultas.fak_kode;

Setelah Berhasil kita bisa memanggil Tabel View yang tadi dengan cara biasa :

Select * from rahasia;

sebelum melangkah ke soal yang ke 2 kita buat terlebih dahulu tabel Gender,

2. AND & OR

Penggunaan AND & OR pada query :

SELECT mhs_nama from mahasiswa WHERE Jur_kode = 1 AND fak_kode = 1;

SELECT mhs_nama from mahasiswa WHERE Jur_kode = 1 OR fak_kode = 1;

4. BETWEEN

Penggunaan BETWEEN pada query :

SELECT * FROM mahasiswa BETWEEN 3 and 8;

5. LIKE

Penggunaan LIKE pada query :

SELECT * FROM mahasiswa where msh_nama LIKE ’s%’

6. LIKE

Penggunaan LIKE pada query :

SELECT * FROM mahasiswa where msh_nama LIKE ’s%i’

7. DISTINCT

Penggunaan DISTINCT pada query :

SELECT DISTINCT (fak_kode) FROM mahasiswa;

8. LIMIT

Penggunaan LIMIT pada query :

Perintah SQL yang digunakan :

INSERT INTO mahasiswa VALUES (12,’edi’,’malang’,0813425356),

(13,’sinta’,’jogja’,0813347566),(14,’luki’,’ponorogo’,089748834);

Berikut adalah hasilnya :

Berikut adalah hasilnya:

3. Tampilkan data mahasiswa berdasarkan nim salah satu mahasiswa. Sehingga yang muncul

hanya salah satu data mahasiswa.

Perintah SQL yang digunakan :

SELECT * FROM mahasiswa WHERE mhs_nim = 12;

Berikut ini adalah hasilnya :

4. Tampilkan data mahasiswa, fakultas dan jurusan. Ambil berdasarkan nim, nama mahasiswa,

nama fakultas, nama jurusan.

Perintah SQL yang digunakan berdasarkan nim :

SELECT mahasiswa.mhs_nim,mahasiswa.msh_nama,jurusan.jur_nama,fakultas.fak_nama

FROM mahasiswa WHERE mahasiswa.mhs_nim = 12 and jurusan.jur_kode = jurusan.jur_kode

and fakultas.fak_kode = fakultas.fak_kode;

Berikut ini adalah hasilnya :

Perintah SQL yang digunakan berdasarkan nama :

SELECT mahasiswa.mhs_nim,mahasiswa.msh_nama,jurusan.jur_nama,fakultas.fak_nama

FROM mahasiswa WHERE mahasiswa.mhs_nama = ‘sinta’ and jurusan.jur_kode =

jurusan.jur_kode and fakultas.fak_kode = fakultas.fak_kode;

Berikut ini adalah hasilnya :

Perintah SQL yang digunakan berdasarkan nama jurusan :

SELECT mahasiswa.mhs_nim,mahasiswa.msh_nama,jurusan.jur_nama,fakultas.fak_nama

FROM mahasiswa WHERE jurusan.jur_nama = ‘informatika’ and jurusan.jur_kode =

jurusan.jur_kode and fakultas.fak_kode = fakultas.fak_kode;

Berikut ini adalah hasilnya :

Perintah SQL yang digunakan :

DELETE FROM mahasiswa WHERE mhs_nim = 13;

Berikut ini adalah hasilnya :

6. Ubah data berupa alamat : solo dan no.telp : 0857688788 yang memiliki nim 12

Perintah SQL yang digunakan :

UPDATE mahasiswa SET mhs_alamat = ‘solo’ WHERE mhs_nim = 12;

UPDATE mahasiswa SET no_tlp = 0875688788 WHERE mhs_nim = 12;

Berikut ini adalah hasilnya :

7. Tampilkan data mahasiswa yang memiliki nim < 14 dan urutkan dari besar ke kecil

Perintah SQL yang digunakan :

SELECT * FROM mahasiswa WHERE mhs_nim <= 14;

Berikut ini adalah hasilnya :

1. Kita akan memakai relasi antara tabel jadwal dengan dosen dank at_kul dalam database

DB_AKADEMIK;

Per tama kita masukkan dulu data masing-masing tabel.

A.tabel matkul

SQL QUERY : INSERT INTO mat_kul VALUES

(1,’matematika’,2,1),(2,’algoritma’,1,1),(3,’studi hadits’,2,1);

B.tabel dosen

SQL QUERY : INSERT INTO dosen VALUES (111,’edi’,’gresik’,1),(112,’sinta’,’malang’,1),

(113,’jojo’,’bandung’,1);

C.tabel Jadwal

SQL QUERY : INSERT INTO dosen VALUES (111,’a’,1,1,’10.00’),(112,’b’,3,2,’7.00’),

(113,’c’,2,3,’8.00’);

2. Menampilkan data jadwal berupa kode matakuliah kelas dan jam.

3. Menampilkan data dosen berdasarkan nip salah satu dosen. Sehingga yang muncul hanya

salah satu data dosen.

4. Menampilkan data kelas, nama mata kuliah,nip dosen, nama dosen dan sks.yang diambil

berdasarkan.kelas ‘a’, dosen ber nip = 112 dan matakuliah ber kode 1.

5. Menghapus data dosen yang memiliki nip : 112

6. Merubah data berupa alamat : bandung menjadi jakarta bagi dosen yang memiliki nip = 113;