8. edi sbd query antar tabel.ppt -...

18
Kontrak Kuliah Query Antar Tabel 1 Edi Sugiarto, S.Kom, M.Kom

Upload: dangnga

Post on 24-May-2019

231 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

Kontrak Kuliah

Query Antar Tabel

1

Edi Sugiarto, S.Kom, M.Kom

Page 2: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

Persiapan

• Untuk praktikum pertemuan ini gunakan tabel

employee yang telah dibuat pada pertemuan

sebelumnya (lihat materi minggu 6)

• Selanjutnya buat tabel department dengan

struktur sbb :

2

Nama Field Type Keterangan

deptNo Int(3)

Primary key, tidak boleh kosong

, unsigned, zerofill,

auto_increment

deptName Varchar(20) Tidak boleh kosong

location Varchar(20)

Page 3: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Selanjutnya tambahkan record berikut pada tabel

department

3

Page 4: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

Menggabungkan Tabel

• Sql memiliki kemampuan untuk menggabungkan dua

atau lebih tabel untuk membentuk sebuah informasi,

sedangkan prosesnya disebut join

• Contoh : akan menampilkan nomor, nama karyawan dan

nama department dari penggabungan tabel employee

dan department.

4

Page 5: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Menggunakan alias

– nama tabel yang digunakan dalam query dapat

diganti dengan menyebutkan nama aliasnya.

5

Page 6: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Operator union

– Digunakan untuk menggabungkan hasil dari dua

buah query, misalnya terdapat dua tabel berikut:

– Contoh akan digabung nama_sales dari tabel sales

dan nama_pel dari tabel pelanggan.

6

Sales_id Nama_sales

101 Amir

102 Mimin

Nama_pel Alamat_pel Sales_id

Agus Jl. Ranggalawe 101

Anis Jl. Merdeka 102

Sales Pelanggan

Page 7: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Operator Cross Join

– Operator cross join digunakan untuk melakukan

operasi kartesian.

– Contoh akan dilakukan cross join untuk dua buah

tabel yakni tabel sales dan tabel pelanggan

7

Page 8: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

– Atau

– Dengan cross join maka record yang

ditampilkan merupakan kombinasi dari record

pada dua atau lebih tabel yang digabung.

– Jika kita ingin melakukan relasi antar kedua

tabel, maka diperlukan hubungan data yang

sama antara kedua tabel melalui kunci relasi8

Page 9: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

– Maka perintah cross join dapat diatur sbb:

– atau

9

Page 10: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Operator Inner Join

– Operator inner join hampir sama denga cross join

namun diikuti dengan kondisi

– Contoh :

10

Page 11: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Operator Left Join

– Perintah ini digunakan untuk menampilkan data-data

seolah dari sudut pandang tabel pertama.

– dengan operator ini akan menampilkan semua data

dari tabel pertama terlepas dari ada atau tidaknya

nilai kunci yg sama dari tabel kedua

11

Page 12: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

• Operator Right Join

– Operator ini merupakan kebalikan dari operator left

join, dengan operator ini akan menampilkan semua

data dari tabel ke dua terlepas dari ada atau tidaknya

nilai kunci yg sama dari tabel pertama.

12

Page 13: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

Terima kasih

13

Page 14: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

Latihan

1. Buatlah tabel poliklinik, dokter, pasien, dan rawat_jalan

dan isilah record data sbb:

14

Poliklinik Dokter

PasienRawat_jalan

Page 15: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

2. Tampilkan semua data poliklinik dalam format sbb:

3. Tampilkan data rawat jalan dalam format sbb:

15

kode_poli Nama_poli Biaya Nama_Dokter

No_rj Nama_pasien Tgl_masuk Nama_poli

Biaya Nama_dokter spesialis

Page 16: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

4. Tampilkan nama poliklinik dan jumlah pasien yang

masuk pada poliklinik tersebut, contoh hasilnya sbb :

5. Tampilkan semua data dari relasi tabel poliklinik dan

dokter berdasarkan sudut pandang tabel poliklinik

dalam format dan contoh hasilnya sbb :

16

kode_poli Nama_poli Biaya Nama_Dokter

Page 17: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

6. Tambahkan record berikut pada tabel rawat_jalan

7. Tampilkan jumlah pasien yang diperiksa dokter

“Rahmat” pada tahun 2012

8. Tampilkan kode pasien, nama, dan kota dari data

pasien yang diperiksa oleh dokter “Rahmat” pada tahun

2011.

17

No_rj Kode_pasien Tgl_masuk Kode_poli

R05 S04 2011-09-26 P03

R06 S03 2010-03-01 P04

R07 S01 2010-04-05 P03

Page 18: 8. EDI SBD Query Antar Tabel.ppt - dinus.ac.iddinus.ac.id/repository/docs/ajar/8._EDI_SBD_Query_Antar_Tabel_.pdf · Menggabungkan Tabel • Sql memiliki kemampuan untuk menggabungkan

9. Tampilkan nama pasien dan kotanya untuk pasien yang

masuk ke poliklinik gigi pada tahun 2012

10.Tampilkan kode pasien, nama pasien dan jumlahnya

untuk pasien yang melakukan rawat jalan dalam kurun

waktu 2011 hingga 2012

18