Tutorial SQL ( Structured Query Language ) part 1

Structured Query Language (SQL) merupakan bahasa yang banyak digunakan dalam berbagai produk
database. SQL dibangun di laboratorium IBM-San Jose California sekitar akhir tahun 70-an. Pertama kali dikembangkan sebagai bahasa di produk database DB2 yang sampai saat ini merupakan produk database andalan IBM. SQL sering di lafalkan dengan “sequel”.
Saat ini organisasi standar America (ANSI) menetapkan standar bahasa SQL yaitu ANSI-92 standard.
Masing-masing vendor database memiliki dialeknya sendiri sebagaian besar spesifikasinya mengacu pada standar ANSI tersebut dengan berbagai ekstensi tambahan. SQL Server menggunakan bahasa Transact-SQL dalam produknya, sedangkan Oracle menggunakan PL/SQL.
Dalam tutorial ini penulis menggunakan database NorthWind yang merupakan database sampel di SQL Server sebagai sarana latihan. Tools yang digunakan adalah Query Analyzer, yang dapat diakses dari menu Start > Program > Microsoft SQL Server > Query Analyzer. Anda juga dapat menggunakan produk database lain seperti MySQL atau Oracle dengan konsep yang sama. 

Dasar SQL
 
Fungsi paling dasar dari SQL adalah untuk menampilkan data dari database. Data tersebut selanjutnya dapat
difilter dan dimanipulasi sesuai kebutuhan aplikasi.
Perintah perintah dalam SQL terbagi dalam 2 kelompok besar :
•  Data Manipulation Language
•  Data Definition Language

Menampilkan Data Dengan  Perintah SELECT

Syntax paling dasar untuk mengambil data dari database adalah sebagai berikut :

SELECT column
FROM table


Buka query Analyser dan pastikan anda telah terkoneksi dengan database Northwind. Tuliskan kode berikut untuk menampilkan data customer yang terdapat di tabel Customers.

SELECT CustomerID, CompanyName, ContactName
FROM Customers


Jalankan perintah tersebut dengan menekan tombol F5, maka akan tampil tiga kolom dari tabel Customers :
CustomerID CompanyName                             ContactName                    
---------- ---------------------------------------- ---------- 
ALFKI      Alfreds Futterkiste                      Maria 
ANATR      Ana Trujillo Emparedados y helados       Ana 
ANTON      Antonio Moreno Taquería                  Antonio 
AROUT      Around the Horn                          Thomas 
BERGS      Berglunds snabbköp                       Christina 
BLAUS      Blauer See Delikatessen                  Hanna Moos
BLONP      Blondesddsl père et fils                 Frédérique 
BOLID      Bólido Comidas preparadas                Martín 
BONAP      Bon app'                                 Laurence 
………………………..
………………………..

Untuk menampilkan semua kolom dari suatu table, digunakan tanda asterik (*), daripada menyebutkan nama kolomnya satu per satu. Tiluskan statement berikut :

SELECT * FROM Customers 

Maka akan ditampilkan seluruh kolom di table Customers yang berjumlah 11 kolom. 
Meskipun cara ini sangat sederhana untuk menampilkan isi seluruh kolom dari suatu table, anda tetap
dianjurkan untuk hanya mengambil data dari kolom yang anda perlukan saja. Pengambilan data yang tidak perlu mengakibatkan penurunan performa aplikasi.

Filter Data Dengan WHERE

Perintah SELECT dan FROM diatas hanya membatasi jumlah kolom yang ditampilkan saja, sedangkan jumlah baris yang dihasilkan tidak dibatasi. Anda sering memerlukan hanya baris atau data yang memenuhi kriteria tertentu saja yang ditampilkan. 
Klausa WHERE digunakan untuk menentukan kriteria RECORD yang ditampilkan. Syntax umumnya adalah sebagai berikut :

SELECT columns
FROM tables
WHERE Conditions


Perintah SQL diatas dapat dimodifikasi agar menampilkan data untuk customer dengan kode ALFKI saja. Kode SQL nya menjadi sebagai berikut :

SELECT CustomerID, CompanyName, ContactName
FROM Customers
WHERE CustomerID = 'ALFKI'


Setelah dirun maka tampil hasil query sebagai berikut :
CustomerID CompanyName                          ContactName                    
---------- ---------------------------------------- ---------- 
ALFKI      Alfreds Futterkiste                   Maria Anders

(1 row(s) affected)

Terlihat bahwa hanya dihasilkan satu record yang memenuhi kriteria. Dalam perintah tersebut kriteria yang digunakan adalah kolom CustomerID dengan nilai ALFKI.
Anda juga dapat membuat beberapa kriteria sekaligus dengan klausa WHERE. Logika yang digunakan bisa berupa OR (atau) serta AND (dan). Perhatikan contoh perintah berikut :

SELECT CustomerID, CompanyName, ContactName FROM Customers WHERE CustomerID = 'ALFKI' OR CustomerID = 'AROUT'

Maka dihasilkan dua buah record yang memenuhi kritreia tersebut :
CustomerID CompanyName                          ContactName                    
---------- ---------------------------------------- ---------- 
ALFKI      Alfreds Futterkiste                   Maria Anders
AROUT      Around the Horn                       Thomas Hardy
(2 row(s) affected)

Cara lain adalah menggunakan AND sehingga data yang ditampilkan hanya yang memenuhi kriteria yang disebutkan saja. Misalkan perintah berikut :

SELECT CustomerID, CompanyName, ContactName FROM Customers WHERE City  = 'London' AND    ContactName = 'Thomas Hardy'        

Maka record yang ditampilkan harus memenuhi kedua kriteria di klausa WHERE. Hasil yang didapat adalah :
CustomerID CompanyName                          ContactName                    
---------- ---------------------------------------- ----------AROUT      Around the Horn     
Thomas Hardy
(1 row(s) affected)
 
Apabila anda mengganti AND dengan OR, maka hasilnya akan berbeda, yaitu sebagai berikut :
CustomerID CompanyName                       ContactName                    
---------- ---------------------------------------- ---------- 
AROUT      Around the Horn                   Thomas Hardy
BSBEV      B's Beverages                     Victoria Ashworth
CONSH      Consolidated Holdings             Elizabeth Brown
EASTC      Eastern Connection                Ann Devon
NORTS      North/South                       Simon Crowther
SEVES      Seven Seas Imports                Hari Kumar

(6 row(s) affected)

 Sampai di sini anda telah mempelajari bagaimana mengambil data dari database berdasarkan kriteria tertentu, serta perbedaan penggabungan kriteria yang menggunakan OR dan AND.

Sortir Data Dengan ORDER BY

ORDER BY digunakan untuk mengurutkan hasil pencarian data. Secara default data yang ditampilkan disortir
berdasarkan urutan masuknya data ke dalam tabel. Dengan menggunakan ORDER BY anda dapat
mengurutkan berdasarkan kolom tertentu yang anda kehendaki. 
Bila anda perhatikan perintah SQL diatas maka data yang dihasilkan telah diurutkan berdasarkan kolom
CustomerID. Anda dapat merubahnya dengan mengurutkan berdasarkan kolom ContactName dengan perintah
berikut :
SELECT CustomerID, CompanyName, ContactName
FROM Customers
ORDER BY ContactName

Sehingga hasilnya adalah :
CustomerID CompanyName                       ContactName                    
---------- ---------------------------------------- ---------- 
ROMEY      Romero y tomillo                  Alejandra Camino
MORGK      Morgenstern Gesundkost            Alexander Feuer
ANATR      Ana Trujillo Emparedados     Ana Trujillo
TRADH      Tradição Hipermercados            Anabela Domingues
GOURL      Gourmet Lanchonetes               André Fonseca
EASTC      Eastern Connection                Ann Devon
LAMAI      La maison d'Asie                  Annette Roulet

Terlihat bahwa data telah diurutkan berdasarkan ContactName secara ascending (dari a ke z). Anda dapat membalik urutan menjadi dari z ke a dengan merubah klausa ORDER BY menjadi seperti berikut :

ORDER BY ContactName desc 

Secara default urutan yang digunakan adalah ascending.
Selain itu dapat pula digunakan beberapa kriteria pengurutan. Artinya pengurutan dilakukan berdasarkan kolom yang disebut pertama, setelah itu kolom kedua, dan selanjutnya. Perintah diatas dapat ditambahkan sehingga menjadi sebagai berikut :

SELECT CustomerID, CompanyName, ContactName
FROM Customers
ORDER BY ContactName, CompanyName


Maka data akan diurutkan mengikuti ContactName, dan selanjutnya berdasarkan CompanyName. 
Perintah ORDER BY juga dapat digabungkan dengan WHERE misalnya sebagai berikut :

SELECT CustomerID, CompanyName, ContactName
FROM Customers
WHERE City  = 'London' OR 
  ContactName = 'Thomas Hardy'        
ORDER BY ContactName 



Perhatikan baik-baik bahwa ORDER BY harus diletakkan setelah WHERE. Apabila urutan tersebut terbalik maka statement SQL tidak dapat dijalankan dan menghasilkan pesan error berikut :
Server: Msg 156, Level 15, State 1, Line 4
Incorrect syntax near the keyword 'WHERE'.

  

Comments

Popular posts from this blog

INSTALL SQL SERVER 2000 SP4 WINDOWS 10 SIMDA BMD KAB.TANGERANG

SISTEM INFORMASI KEPEGAWAIAN (SIMPEG) DENGAN CODEIGNITER 3

SISTEM INFORMASI DAFTAR USULAN PENETAPAN ANGKA KREDIT ( DUPAK ) KAB.TANGERANG BANTEN DENGAN PHPMYSQL

SISTEM IMFORMASI INSIDEN DAN PELAYANAN KESEHATAN KAB.TANGERANG BANTEN

SISTEM INFORMASI PUSKESMAS PHP PDO MYSQL

Aplikasi Banjir Dinas Kesehatan Kab. Tangerang Dengan AJAX dan PHPMYSQL

Install Laravel 5.4 di Windows 10 dengan Composer dan GIT

Konsep Jaringan Komputer

Tutorial SQL ( Structured Query Language ) part 4