Senin, 21 Desember 2015

SQL (Sructured Query Language) Aljabar Relational Dan Query Sub & View

Aljabar Relational
Bagian dari ilmu komputer, cabang dari logika predikat tingkat pertama dan aljabar himpunan, yang menangani suatu set relasi hingga yang memiliki sifat ketertutupan dengan operator-operator tertentu. Operator ini bertindak dengan satu atau lebih relasi untuk menghasilkan suatu relasi (gabungan). Aljabar relasional mulai mendapat perhatian dengan diterbitkannya model relasional data oleh Edgar F. Codd pada tahun 1970 yang mengusulkan untuk menggunakan aljabar ini sebagai dasar dari bahasa kueri basis data. 


Operasi Pada Aljabar Relational :
Terdapat Enam operasi dasar dalam aljabar relasional, yaitu:
 
  1. Selection ( σ ) 
  2. Projection ( π ) 
  3. Cartesian – product ( X, juga disebut sebagai cross product )
  4. Union (∪)
  5. Set – difference ( – )
  6. Rename ( ρ )
Operasi – operasi turunan dari operasi – operasi dasar tersebut adalah:
  1. Set intersection ( ∩ ) 
  2. Theta join ( θ )
  3. Outer-join
  4. Division ( ÷ )

Berikut Penjelasan dari beberapa operasi diatas :

1.Operasi Selection ( σ )

Selection / Select (σ ), adalah operasi untuk menyeleksi tupel – tupel yang memenuhi suatu predikat, kita dapat menggunakan operator perbandingan(<,>,>=,<=,=,#) pada predikat. Beberapa predikat dapat dikombinasikan menjadi predikat manjemuk menggunakan penghubung AND (∧) dan OR (∨).
2. Operasi Projection ( π )
Projection / Project ( π ), adalah operasi untuk memperoleh kolom – kolom tertentu. Operasi project adalah operasi unary yang mengirim relasi argumen dengan kolom – kolom tertentu. Karena relasi adalah  himpunan, maka baris – baris duplikasi dihilangkan. Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut :
π colum1,…,column ( tabel)
3. Operasi Cartesian-product ( X )
Cartesian-product ( X ), adalah operasi untuk menghasilkan tabel hasil perkalian kartesian. Sintaks yang digunakan dalam operasi proyeksi ini adalah sebagai berikut:                                                       R X S = {(x,y) | x∈R dan y∈S}
Operasi Cartesian – product memungkinkan kita mengkombinasikan informasi beberapa relasi, operasi ini adalah operasi biner. Sebagaimana telah dinyatakan bahwa  relasi adalah subset hasil Cartesian – product dan himpunan domain relasi – relasi tersebut. Kita harus memilih atribut – atribut untuk relasi yang dihasilkan dari Cartesian – product.
4. Operasi Union (∪)
Union (∪), adalah operasi untuk menghasilkan gabungan tabel degan syarat kedua tabel memiliki atribut yang sama, yaitu domain atribut ke-i masing – masing tabel harus sama. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut :
R ∪S = {x | x∈R atau X∈S}
Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang sama sehingga jumlah komponennya sama.
5. Set-difference ( – )
Set-difference ( – ), adalah operasi untuk mendapatkan tabel pada suatu relasi, tapi tidak ada pada relasi yang lainnya. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut :
R – S = { x | x∈R dan X∉S}
Operasi ini dapat dilaksanakan apabila R dan S mempunyai atribut yang tidak sama yang akan ditampilkan, artinya adalah atribut R yang tidak ada di S akan ditampilkan, sedangkan atribut yang sama tidak ditampilkan.
6. Rename ( ρ )
Rename ( ρ ), adalah operasi untuk menyalin tabel lama kedalam tabel yang baru. Sintaks yang digunakan dalam operasi union ini adalah sebagai berikut :
ρ [nama_tabel] (tabel_lama).
7. Set-intersection ( ∩ )
Set-intersection / Intersection ( ∩ ) termasuk kedalam operator tambahan, Karena operator ini dapat diderivikasi dari operator dasar seperti berikut:
A ∩ B = A – ( A – B ), atau A ∩ B = B – ( B – A )
Operasi ini merupakan operasi binary, yang digunakan untuk membentuk sebuah relasi baru dengan tuple yang berasal dari kedua relasi yang dihubungkan.
8. Theta-join ( θ ) / Equi-join
Theta-join ( ) dan equi-join adalah operasi untuk menggabungkan operasi selection dan cartesian-product dengan suatu kriteria.
9. Outer-join
Outer-join adalah operasi untuk menggabungkan operasi selection dan cartesian- product dengan suatu kriteria pada kolom yang sama.
10. Devision ( ÷)
Devision ( ÷ ) adalah operasi yang banyak digunakan dalam query yang mencakup frase “setiap” atau “untuk semua”, operasi ini juga merupakan pembagian atas tuple – tuple dari dua relasi.

Latihan Aljabar Relational
1. UNION

a). Tampilkan NIM, berapa kali nilai yang muncul dan total nilai per mahasiswa. NIM yang ditampilkan adalah ‘201381001’
b). Tampilkan NIM, berapa kali nilai yang muncul dan total nilai per mahasiswa. NIM yang ditampilkan adalah ‘201381005’
 
c). Dengan UNION Tampilkan NIM, berapa kali nilai yang muncul dan total nilai per mahasiswa. NIM yang ditampilkan adalah ‘201381002’ dan ‘201381005’

2. DISTINCT

Tampilkan nilai berdasarkan kode mata kuliah, dengan menghilangkan data yang bernilai ganda

 



3. JOINT 
a). Dengan menggunakan sintax joint tampilkan nama matakuliah, SKS, dan nilai


b). Tampilkan nama mahasiswa, kota dan nilai


 c). Tampilkan nama mata kuliah, nama mahasiswa,dan nilai
 
 



Query Sub & View

Query Sub
Sub query adalah query di dalam query, artinya seleksi data berdasarkan dari hasil seleksi data yang telah ada. 
Ada pun kegunaan sub query dalam memanipulasi data adalah sebagai berikut : 

  • Meng-copy data dari satu tabel ke tabel lain
  • Menerima data dari inline view 
  • Mengambil data dari tabel lain untuk kemudian di update ke tabel yang dituju 
  • Menghapus baris dari satu tabel berdasarkan baris dari tabel lain

 

1.Membuat Tabel barang

 



2.Membuat Tabel Pelanggan

3.Membuat Tabel Pembelian

VIEW
SQL View merupakan tabel semu, artinya secara fisik data tidak tersimpan dalam basis data, tetapi secara lojik dapat berfungsi seolah-olah sebagai tabel. SQL View tidak memiliki data sendiri, tetapi data-datanya berasal dari tabel-tabel atau view lain. SQL View dibuat atau dibangun dengan SELECT statement. Di dalam query SELECT tersebut kita bias menambahkan ORDER BY statement untuk mengurutkan data atau tidak sama sekali. SQL View dapat digunakan untuk memudahkan atau menyederhanakan data yang ditampilkan,  mencegah menampilkan data yang penting dengan menyembunyikan nama kolomnya.
Fungsi dari view sendiri itu adalah :
  • Menyembunyikan Kolom atau Baris 
  • Menampilkan hasil dari penghitungan 
  • Menyembunyikan Sintak SQL yang rumit 
  • Fungsi Built-in Layer 
  • Menyediakan level isolasi antara data tabel dan View data pengguna 
  • Memberikan proses permission yang berbeda untuk view yang berbeda dari tabel yang sama 
  • Memberikan trigger berbeda pada view yang berbeda dari tabel yang sama

Latihan Query Sub & View
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 (suplier) yang menampilkan nama pelanggan,alamat dan telepon. Pelanggan yang ditampilkan adalah yang berasal dari kota Jakarta.

 4.  Buatlah view V_PLGN_BELI (pasok) 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

 


 
 
 
 
  

SQL (Sructured Query Language) Pengelompokkan, Pengurutan & Kriteria Data Latihan

LATIHAN(QUIS-8des15) Pengelompokkan, Pengurutan & Kriteria Data

Tabel MAHASISA


Tabel MATAKULIAH

Tabel NILAI
Tabel NILAI



  • Tampilkan Jumlah nilai minimum per matakuliah
  • Tampilkan nilai maksismum dari semua data pada tabel NILAI
  • Tampilkan NIM dan kode matakuliah yang mempunyai nilai 90

  • Tampilkan NIM dan kode matakuliah yang mempunyai nilai kurang dari 90
  • Tampilkan data mahasiswa yang dari kota berakhiran "KARTA"