Archive

Archive for the ‘Database’ Category

Sub Queries

January 5, 2014 Leave a comment

Subquery adalah query yang terletak dalam query lain ( main query / SELECT statement ) dan letaknya berada bisa pada SELECT clause, FROM clause atau WHERE clause main query.

Dalam membuat subquery yang perlu diperhatikan adalah:

  • Subquery akan dieksekusi lebih dahulu oleh DBMS, lalu hasil dari subquery akan menjadi input bagi main query
  • Subquery pada SELECT dan WHERE clause harus menghasilkan hanya satu nilai (satu row, satu column).
  • Subquery yang result lebih dari satu (satu column, multiple row) dapat digunakan pada WHERE clause jika result  digunakan untuk perbandingan pada main query misal dengan operator IN.
  • Subquery juga dapat digunakan pada statement INSERT, UPDATE, dan DELETE dan dengan operator query seperti =, <, >, >=, <=, IN, BETWEEN.
  • ORDER BY tidak dapat digunakan dalam subquery.

Example

Table : employee

Table Employee

Table Employee

Contoh query pada clause FROM

From Clause

From Clause

Contoh query pada clause WHERE

Where Clause

Where Clause

Where Clause 2

Where Clause 2

Referensi : dari berbagai sumber.

Semoga bermanfaat.

SQL Insert Into Select Dan Select Into Statement

September 22, 2013 1 comment

Berikut ini dua trivia SQL statement.

  • Insert into select statement digunakan untuk men-copy isi suatu table ke table yang sudah ada / exist.

Syntax :

INSERT INTO tbl_name_1 SELECT column_name(s) FROM tbl_name_2

  • Select into statement digunakan untuk mencopy isi suatu table ke table baru.

Syntax ( MySQL ) :

CREATE TABLE tbl_name_new SELECT column_name(s) FROM tbl_name

Semoga bermanfaat.

SQL Group By Statement

September 10, 2013 Leave a comment

Group by statement digunakan dengan select statement untuk  pengelompokan / grup berdasarkan kolom dan umumnya digunakan bersama dengan fungsi agregat.

Syntax :

SELECT column_name, aggregate_function ( column_name ) FROM table_name WHERE conditions GROUP BY column_name 

Berikut ini contoh group by statement :
Table Employee :

Table Employee

Table Employee

Group by statement :

SELECT department, sum(salary) as total_salary FROM `employee` GROUP BY department

Result :

Result

Result

Semoga bermanfaat.

 

SQL Join – Full Join

September 4, 2013 Leave a comment

Full Join keyword mengembalikan semua row pada table A ( table kiri ) dan table B ( table kanan ). Full join merupakan gabungan dari result left join dan right join.

Syntax :

SELECT column_name(s) FROM tableA FULL JOIN tableB ON tableA.column_name = tableB.column_name

Diagram venn Full join:

Full Join

Full Join

Berikut ini contoh full join :

Masih menggunakan table yang sama pada post SQL Join – Left Join ( Customers dan Orders Table )

Full join statement :

SELECT customers.id, customers.name, orders.oid, orders.customer_id
FROM customers
RIGHT JOIN orders ON customers.id = orders.customer_id
UNION ALL
SELECT customers.id, customers.name, orders.oid, orders.customer_id
FROM customers
LEFT JOIN orders ON customers.id = orders.customer_id

Result:

Result

Result

Database MySQL tidak mendukung full join, jadi saya menggunakan keyword union all.

Semoga bermanfaat.

SQL Join – Right Join

September 3, 2013 Leave a comment

Right Join keyword mengembalikan semua row pada table B ( table setelah keyword RIGHT JOIN ) yang cocok dengan row pada table A. Jika pasangannya tidak ditemukan, tabel A berisi NULL.

Syntax:

SELECT column_name(s) FROM tableA RIGHT JOIN tableB ON tableA.column_name = tableB.column_name

Diagram venn Right join

Right Join

Right Join

Berikut ini contoh right join :

Masih menggunakan table yang sama pada post SQL Join – Left Join ( Customers dan Orders Table )

Right join statement:

SELECT customers.id, customers.name, customers.address, orders.oid, orders.customer_id, orders.amount
FROM customers RIGHT JOIN orders ON customers.id = orders.customer_id

Result:

Result

Semoga bermanfaat.

Referensi : Dari berbagai sumber.

SQL Join – Left Join

September 3, 2013 Leave a comment

Left Join keyword mengembalikan semua row pada table A ( table sebelum keyword LEFT JOIN ) yang cocok dengan row pada table B. Jika pasangannya tidak ditemukan, tabel B berisi NULL.

Syntax:

SELECT column_name(s) FROM tableA LEFT JOIN tableB ON tableA.column_name = tableB.column_name

Diagram venn Left join

Left Join

Left Join

Berikut ini contoh left join :

Table Customers :

Table Customers

Table Customers

Table Orders :

Table Orders

Table Orders

Left join statement:

SELECT customers.id, customers.name, customers.address, orders.oid, orders.customer_id, orders.amount from customers LEFT JOIN orders ON customers.id = orders.customer_id

Result :

Result

Semoga bermanfaat.