Query

Query

Seleksi satu table

Seleksi tipe ini memungkinkan anda untuk bebas memilih filed untuk bebas memilih field mana saja yang ingin anda tampilkan, asalkan antara field yang satu dengan yang lain masih berada pada table-tabel yang saling berelasi.

SELECT nama_field-1, …, nama_field-n, aggregate function 
FROM nama_tabel-1,…, nama_tabel-n 
WHERE kriteria 
GROUP BY nama_field-1, …, nama_field-n 
HAVING criteria_aggregate_function 
ORDER BY nama_field 

Contoh soal: 
Tampilkan data pegawai yaitu: nama, pendidikan, jabatan dan tunjangan jabatan. 
Jawab: 
SELECT P.nama, P.pendidikan, J.nm_jabatan, J.tj_jabatan 
FROM pegawai AS P, jabatan AS J 
WHERE P.kd_jabatan = J.kd_jabatan 

Atau sama saja dengan: 

SELECT pegawai.nama, pegawai.pendidikan, jabatan.nm_jabatan, jabatan.tj_jabatan 
FROM pegawai, jabatan 
WHERE Pegawai.kd_jabatan = jabatan.kd_jabatan

 Seleksi dengan sub query 

Sub query adalah query didalam query. Artinya seleksi data berdasarkan dari hasil seleksi data yang telah ada.Sintaks SQL nya sama dengan sintak SQL umumnya , hanya saja kondisi setelah where diikuti dengan query atau Sub-query.

SELECT nama_filed-1,….., nama filed-n 
FROM nama _tabel 
WHERE criteria (SELECT nama_filed-1,….., nama filed-n 
FROM nama _tabel 
WHERE kriteria ) 

Contoh soal : 
Tampilkan jam lembur maksimal yang dilakukan oleh pegawai. 
Jawab : 
SELECT max(jam _lembur ) AS jam _lembur_maksimum 
FROM lembur;

Union ( Gabungan )

Pada prinsipnya union bertujuan untuk menggabungkan dua query atau lebih menjadi satu kesatuan query. Pada operasi union ini mensyaratkan kedua query atau sub query yang akan di gabungkan harus memiliki domain kolom yang sama.

SELECT nama_field-1,…, nama_field-n, aggregate function 
FROM nama_tabel 
WHERE criteria 
GROUP BY nama_field-1,….,nama_field-n

Tampilkan data pegawai honorer saja (pegawai honorer adalah pegawai yang tidak mendapatkan potongan koperasi). Field yang ditampilkan adalah bulan, tahun, nip, nama,jumlah potongan dan keterangan. Pada field keterangan akan berisi data ‘pegawai honorer’, bila jumlah potongan koperasi nol. Apabila pegawai tersebut mendapat potongan koperasi, maka akan muncul keterangan ‘pegawai tetap’. 
Jawab: 
SELECT month (PK.bulan) AS bulan, year(PK.bulan) AS tahun, 
PK.nip, P.nama, PK.jml_pot As jumlah_potongan, 
IIF(PK.jml_pot=0,’pegawai honorer’,’pegawai tetap’) AS keterangan 
FROM pegawai AS P, pot_kop AS PK 
WHERE PK.nip = P.nip AND 
P.nip LIKE ‘H*’;

Join/ Inner join

Pada prinsipnya join/ inner join bertujuan untuk mencari kesamaan data antara table yang satu dengan yang lainnya. Data (record pada field di table yang satu dan record pada field yang lain) yang sama akan ditampilkan setelah terjadi operasi join ini.

Contoh soal: 
Tampilkan nama, pendidikan, nama jabatan serta tunjangan jabatan dari masing-masing pegawai.
Jawab: 
SELECT P.nama, P.pendidikan, J.nm_jabatan, J.tj_jabatan 
FROM pegawai AS P INNER JOIN Jabatan

Comments

Popular posts from this blog

contact person

aplikasi pianika pc