SQL Antar Tabel
-
Upload
arif-syamsul-a-hanafi -
Category
Documents
-
view
3 -
download
1
description
Transcript of SQL Antar Tabel
Relasi Antar TabelAndri Suryadi, M.Kom
Mendefiniskan Relasi • Contoh kasus
Tabel yang dihasilkanTabel MAHASISWANama Field Tipe
NIM TEXT (PK)
NAMA TEXT
KODE_JUR TEXT (FK)
Tabel ORGANISASINama Field Tipe
KODE_ORG TEXT (PK)
NAMA_ORG TEXT
Tabel JURUSANNama Field Tipe
KODE_JUR TEXT (PK)
NAMA_JUR TEXT
KODE_FAK TEXT (FK)
Tabel FAKULTASNama Field Tipe
KODE_FAK TEXT (PK)
NAMA_FAK TEXT
Tabel MHS_ORGNama Field Tipe
ID AUTONUMBER (PK)
NIM TEXT
KODE_ORG TEXT
TGL_GABUNG DATE
Buat Database Access• Database
Relationship
Relasikan tabel• Cara :
• Add Semua tabel yang ada• Drag atribut yang akan direlasikan• Ceklist Enforce Referential integrity dan
Cascade update Related field
Hasil relasi
Isi Data
SQL: Join Antar Table
• SQL dapat kita gunakan untuk menggabungkan beberapa tabel.
• Misalnya kita akan menampilkan nim, nama mahasiswa, beserta nama jurusannya (bukan kode jurusan)
select MAHASISWA.NIM, MAHASISWA.NAMA,
JURUSAN.NAMA_JURfrom
MAHASISWA ,JURUSAN
whereMAHASISWA.KODE_JUR = JURUSAN.KODE_JUR
SQL: Join Antar Table
• Bentuk lain
select M.NIM, M.NAMA, J.NAMA_JUR
fromMAHASISWA M,JURUSAN J
whereM.KODE_JUR = J.KODE_JUR
SQL: Join Antar Table
• Bagaimana jika selain kode jurusan kita juga ingin menampilkan nama fakultas, dan hanya mahasiswa dari fakultas MIPA saja yang akan ditampilkan?
select M.NIM, M.NAMA, J.NAMA_JUR, F.NAMA_FAK
fromMAHASISWA M,JURUSAN J,FAKULTAS F
whereM.KODE_JUR = J.KODE_JUR andJ.KODE_FAK = F.KODE_FAK and
F.KODE_FAK = ‘F01
Nilai NULL dan Outer Join
• NULL adalah nilai kosong pada field. Secara default, field yang dibuat pada Access dapat berisi NULL, kecuali untuk primary key.
• Pada relasi antar tabel, nilai NULL pada foreign dapat menyebabkan query menghasilkan hasil yang salah. Contoh: Suatu saat anda lupa mengisi field KODE_JUR pada tabel MAHASISWA bagi mahasiswa bernama ‘Asep’.
• SQL :SELECT m.NIM, m.NAMA FROM MAHASISWA m,
JURUSAN j WHERE m.KODE_JUR = j.KODE_JUR
Nilai NULL dan Outer Join
• Hasilnya tidak semua mahasiswa tampil karena kode jurusan untuk Asep tidak terisi
• Solusi?1. Oleh karena itu, untuk field yang
merupakan foreign key, sangat dianjurkan mengeset property required menjadi “YES”.
2. Outer JoinSELECT NIM,NAMA, NAMA_JUR FROM MAHASISWA LEFT JOIN JURUSAN ON MAHASISWA.KODE_JUR = JURUSAN.KODE_JUR
Nilai NULL dan Outer Join
• Ada dua jenis outer join pada Access, left join dan righ join. Left join berarti semua record pada bagian kiri (MAHASISWA) akan ditampilkan seluruhnya terlepas apakah memiliki pasangan atau tidak pada bagian kanannya (JURUSAN). Right join adalah sebaliknya.
Latihan• Dari ERD yang telah dibuat tentukan:a. Seluruh mahasiswa beserta jurusan dan
fakultasnyab. Seluruh mahasiswa yang mengikuti
organisasi pencak silatc. Menampilkan mahasiswa yang ada di
jurusan komputerd. Menampilkan jumlah mahasiswa yang
ada dijurusan komputer