Minggu, 20 Desember 2015

SQL - SUB QUERY & VIEW

CHECK THIS

"SUB QUERY & VIEW"

SUB QUERY

Sub query adalah query di dalam query, artinya seleksi data berdasarkan dari hasil seleksi data yang telah ada.
 SELECT field-1,…,field-n
 FROM tabel
 WHERE kriteria ( SELECT field-1,…,field-n
 FROM tabel
 WHERE kriteria );

Contoh :
Jika diketahui terdapat beberapa table berikut :
1. Tabel_Barang
         kode_barang char(6),
         nama_barang varchar(25),
         satuan varchar(20) dan
         stok int,
         primary key : kode_barang
    










2. Tabel Pelanggan
         Kode_Pelanggan char(6),
         Nama varchar(30), Alamat varchar(30), kota varchar(15),
         Telepon varchar(15)
         primary key : kode_Pelanggan


3. Tabel Pembelian
         kode_pembelian char(10) ,kode_barang char(6),
         kode_pelanggan char(6), tgl_pembelian datetime,
         jum_pembelian int.
         Primary key : kode_pembelian,kode_barang,kode_pelanggan
         Foreign key : kode_barang, kode_Pelanggan

Dari ketiga tabel diatas tampilkan transaksi pembelian yang jumlahnya di atas rata-rata 
Penyelesaian …
Tampilkan seluruh transaksi pembelian (tanggal pembelian dan jumlah pembelian).
  SELECT tgl_pembelian, jum_pembelian FROM pembelian

Tampilkan jumlah pembelian rata-rata pada transaksi pembelian.
  SELECT avg(jum_pembelian) as rata2_pembelian
  FROM pembelian

Tampilkan transaksi pembelian yang jumlahnya diatas rata-rata.
  SELECT tgl_pembelian, jum_pembelian
  FROM pembelian
  WHERE jum_pembelian > (SELECT avg(jum_pembelian)
  FROM pembelian)

VIEW

View merupakan tabel semu, artinya secara fisik data tidak tersimpan dalam basis data, tetapi secara lojik dapat berfungsi seolah-olah sebagai tabel.
  CREATE VIEW nama_view AS
  SELECT field-1,…,field-n, aggregate function
  FROM tabel-1,…, tabel-n
  WHERE kriteria
  GROUP BY field-1,…,field-n
  HAVING kriteria_aggregate_function

  ORDER BY field

Buat view bernama v_barang yang menampilkan nama barang dan stok barang.
  CREATE VIEW v_barang as
  SELECT nama_barang, stok_barang
  FROM barang

Tampilkan semua data yang ada pada view v_barang.
  SELECT *from v_barang

Tampilkan nama barang dari view v_barang.
  SELECT nama_barang from v_barang

Hapuslah view v_barang.
  DROP view v_barang

Tampilkan view v_barang (apakah yang terjadi?)

  SELECT * from v_barang


LATIHAN


1. Tampilkan nama barang yang mempunyai stok kurang dari rata-rata.



2. Tampilkan pelanggan yang paling besar pembeliannya



3. Buatlah view dengan nama V_PELANGGAN yang menampilkan nama pelanggan,alamat     dan telepon. Pelanggan yang ditampilkan adalah yang berasal dari kota Jakarta.


4. Buatlah view V_PLGN_BELI yang menampilkan jumlah pembelian per pelanggan untuk       tanggal tertentu. Field yang ditampilkan adalah nama pelanggan jumlah pembelian,               tanggal pembelian. Tampilkan semua data yang ada pada view V_PLGN_BELI






5. Buatlah view V_JUM_BELI yang menampilkan jumlah beli per barang per pelanggan per     tanggal tertentu. Field yang ditampilkan adalah nama barang, nama pelanggan, tanggal       pembelian,dan jumlah pembelian. Tampilkan semua data yang ada pada view                       V_JUM_BELI




Tidak ada komentar:

Posting Komentar