Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- tampilkan
- # SELECT
- -- nilai dari field `id`,`namacabang`,`alamatcabang`,`expsiup` dari table `cabang`,
- # cabang.id,cabang.namacabang,cabang.alamatcabang,cabang.expsiup
- -- dan nilai field `namakota` dari table `kota`
- # kota.namakota
- -- beserta nilai field `namapulau` dari table `pulau`
- # pulau.namapulau
- -- dan juga nilai selisih jumlah tanggal dari nilai field `expsiup` dari table `cabang` dengan tanggal sekarang
- # DATEDIFF(cabang.expsiup,NOW())
- -- dan beri namabaru sebagai field `selisih`
- # AS selisih
- -- yang diambil datanya dari
- # FROM
- -- table `cabang`
- # cabang
- -- direlasikan dengan tabel `kota`, dengan penghubung field `id_kota` dari tabel `cabang` dengan field `id_kota` dari tabel `kota`
- # INNER JOIN kota ON cabang.id_kota=kota.id_kota
- -- dan direlasikan juga dengan tabel `pulau`, dengan penghubung field `id_pulau` di table `kota` dengan field `id` di tabel `pulau`
- # INNER JOIN pulau ON kota.id_pulau=pulau.id
- -- dengan kondisi
- # WHERE
- -- nilai selisih tanggal antara nilai field `expsiup` ditable cabang dengan waktu sekarang adalah antara 0 dan 90
- # DATEDIFF(cabang.expsiup,NOW()) BETWEEN 0 AND 90
- -- secara lengkap ditulis
- SELECT
- cabang.id,cabang.namacabang,cabang.alamatcabang,cabang.expsiup,
- kota.namakota,
- pulau.namapulau,
- DATEDIFF(cabang.expsiup,NOW()) AS selisih
- FROM
- cabang
- INNER JOIN kota ON cabang.id_kota=kota.id_kota
- INNER JOIN pulau ON kota.id_pulau=pulau.id
- WHERE
- DATEDIFF(cabang.expsiup,NOW()) BETWEEN 0 AND 90
- --- dengan melakukan alias pada nama tabel, naka dapat disingkat menjadi:
- SELECT
- a.id,a.namacabanga.alamatcabang,a.expsiup,
- b.namakota,
- c.namapulau,
- DATEDIFF(a.expsiup,NOW()) AS selisih
- FROM
- cabang a
- INNER JOIN kota b ON a.id_kota=b.id_kota
- INNER JOIN pulau c ON b.id_pulau=c.id
- WHERE
- DATEDIFF(a.expsiup,NOW()) BETWEEN 0 AND 90
- -- secara default, JOIN table adalah INNER JOIN, maka untuk INNER JOIN bisa cukup dituliskan sbg JOIN saja
- SELECT
- a.id,a.namacabanga.alamatcabang,a.expsiup,
- b.namakota,
- c.namapulau,
- DATEDIFF(a.expsiup,NOW()) AS selisih
- FROM
- cabang a
- JOIN kota b ON a.id_kota=b.id_kota
- JOIN pulau c ON b.id_pulau=c.id
- WHERE
- DATEDIFF(a.expsiup,NOW()) BETWEEN 0 AND 90
- -- dalam klausa ON, jika nama field di kedua ruas adalah sama maka bisa diganti dengan klausa USING, sebagai berikut
- SELECT
- a.id,a.namacabanga.alamatcabang,a.expsiup,
- b.namakota,
- c.namapulau,
- DATEDIFF(a.expsiup,NOW()) AS selisih
- FROM
- cabang a
- JOIN kota b USING(id_kota)
- JOIN pulau c ON b.id_pulau=c.id
- WHERE
- DATEDIFF(a.expsiup,NOW()) BETWEEN 0 AND 90
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement