Query Bersarang
Berikut Merupakan gambar dari table orders dan table employees.
Pertama kita akan menampilkan data transaksi.
Syntaxnya adalah sebagai berikut.
SELECT Order_ID, Cust_ID, OrderDate, RequiredDate, ShippedDate FROM Orders WHERE EmpID =(SELECT EmpID FROM Employees WHERE FirstName = 'Margaret');
Maka akan muncul tampilan seperti gambar diatas.
Kedua kita akan menampilkan penggunaan subquery skalar dan fungsi agregasi.
Syntaxnya adalah sebagai berikut.
SELECT * FROM Employees WHERE Salary > (SELECT AVG(SALARY) FROM Employees);
Maka akan muncul tampilan seperti gambar diatas.
Ketiga kita akan menampilkan penggunaan subquery skalar dan fungsi agregasi sesuai rata - rata.
Syntaxnya adalah sebagai berikut.
SELECT * FROM employees WHERE salary > (SELECT AVG(Salary) FROM employees) ORDER BY Salary;
Maka akan muncul tampilan seperti gambar diatas.
Keempat kita akan menampilkan subquery tabel dan statement ANY/SOME.
Syntaxnya adalah sebagai berikut.
SELECT * FROM Employees WHERE Salary > SOME (SELECT Salary FROM Employees WHERE Title = 'Sales Rep.');
Maka akan muncul tampilan seperti gambar diatas.
Kelima kita akan menampilkan data pegawai.
Syntaxnya adalah sebagai berikut.
SELECT * FROM Employees WHERE Salary > ALL (SELECT Salary FROM Employees WHERE Title = 'Sales Rep.');
Maka akan muncul tampilan seperti gambar diatas.
Keenam kita akan menampilkan data semua pegawai yang mempunyai gaji lebih tinggi dari semua pegawai yang mempunyai jabatan 'Technique Leader'.
Syntaxnya adalah sebagai berikut.
SELECT * FROM Employees WHERE Salary > ALL (SELECT Salary FROM Employees WHERE Title = 'Technique Leader') Order By Salary;
Maka akan muncul tampilan seperti gambar diatas.
Yang terakhir kita akan menampilkan data pegawai yang telah melakukan transaksi penjualan lebih besar atau sama dengan 2.
Syntaxnya adalah sebagai berikut.
SELECT * FROM Employees WHERE EmpID IN (SELECT EmpID FROM Orders GROUP BY EmpID HAVING Count(*) >=2);
Maka akan muncul tampilan seperti gambar diatas.
Comments
Post a Comment