Selasa, 25 September 2012

Syntax SQL server


waw.. baik lah... ini tulisan ketiga saya.. heheh bahasannya masih seputar SQL, tepatnya Syntax SQL
dan di bawah ini adalah beberapa syntax untuk SQL :

1. Perintah Select

Perintah select adalah perintah yang digunakan untuk memanggil data yang ada di dalam table. Syntax nya adalah : SELECT field-1, field-2, .... field-n FROM namatabel
Contoh :
ada 3 data dari tabel mahasiswa berupa nim, nama
data-1 : | 10102214 | Udin |
data-2 : | 10102215 | Adin |
data-3 : | 10102216 | Joko |

dengan menggunakan perintah "Select * From mahasiswa" maka akan didapatkan data2 tersebut,
| 10102214 | Udin |
| 10102215 | Adin |
| 10102216 | Joko |

2. Klausa Where

Where dipake untuk menyaring data dalam syntax/command SQL yg kita punya.
Syntax : <arguments> WHERE <arguments> <operator> <arguments>
Tabel operator yang dapat digunakan :
>              Lebih besar
<              Lebih kecil
>=           Lebih besar sama dengan
<=           Lebih kecil sama dengan
=              Sama dengan
<>           Tidak sama dengan
Between x and y              Antara x dan y
Like        Seperti... bla bla bla... (dengan / mengandung format tertentu)
Is Null   Kosong / Tidak memiliki nilai
In            Nilai berada di dalam tanda ( dan tanda )

3. Klausa Where Lanjutan

ini dia contoh-contoh pemakaian operator pembanding tersebut dalam query :
1. Ambil data "barang" yang "jml" nya lebih dari 20
     SQL = " SELECT * From barang WHERE jml > 20 "

2. Ambil data "nilai_mhs" yang "nilai" nya kurang dari 60
     SQL = " SELECT * From nilai_mhs WHERE nilai < 60 "

3. Ambil data "barang" yang "jml" nya lebih besar sama dengan 20
     SQL = " SELECT * From barang WHERE jml >= 20 "

4. Ambil data "nilai_mhs" yang "nilai" nya lebih kecil sama dengan 60
      SQL = " SELECT * From nilai_mhs WHERE nilai <= 60 "

5. Hapus data "mahasiswa" yang memili "NIM" sama dengan "10104422"
      SQL = " DELETE * From mahasiswa WHERE NIM = '10104422' "

6. Ambil data "barang" yang "nama_barang" nya mengandung kata "Ice"
      SQL = " SELECT * From barang WHERE nama_barang like '%Ice%' "

7. Ambil data "barang" yang "kode_brg" nya berawalan "C"
      SQL = " SELECT * From barang WHERE kode_brg like 'C%' "

8. Ambil data "barang" yang "kode_brg" nya berakhiran '2008'
      SQL = " SELECT * From barang WHERE kode_barang like '%2008' "

9. Ambil data "barang" yang "jml" nya bernilai null
      SQL = " SELECT * From barang WHERE jml is null "

10. Ambil data "mahasiswa" yang "usia" nya antara 17 - 19tahun
         SQL = " SELECT * From mahasiswa WHERE usia >=17 and usia<=19 "

Klausa Order By
    klausa ini dipakai untuk mengurutkan data berdasarkan sesuatu / field.
    Order by ini secara defaultnya bersifat ascending.
      ada 2 buah variable lain yg dapat diikut serta kan, yakni ASC dan DESC.
    -ASC untuk mengurutkan data dari yang bernilai kecil hingga ke data yang bernilai besar
    -DESC untuk mengurutkan data dari yang bernilai besar hingga ke data yang bernilai kecil

Syntax : <arguments> ORDER BY <field> <asc> / <desc>
berikut adalah data mahasiswa pada contoh penggunaan select dapat dilakukan :

1. "SELECT * From mahasiswa ORDER BY NIM desc"
     hasilnya adalah :
| 10102216 | Joko |
| 10102215 | Adin |
| 10102214 | Udin |
2. "SELECT * From mahasiswa ORDER BY nama asc"
     hasilnya adalah :
| 10102215 | Adin |
| 10102216 | Joko |
| 10102214 | Udin |

4. Aritmethic Function

     Fungsi - fungsi aritmetika yang dapat dijalankan pada suatu SQL
     Contoh : data awal berupa NIM, Nama Lengkap, Nilai
| 10103241 | Adin |80|
| 10103287 | Joko |85|
| 10103214 | Udin |75|

Beberapa eksekusi / function yang ada di T-SQL :

1. Sum : menjumlahkan suatu field
      syntax : "select sum(Nilai) from mahasiswa"
      result : 240

2. Max : mengambil data terbesar
       syntax : "select max(Nilai) from mahasiswa"
       result : 85

3. Min : mengambil data terkecil
       syntax : "select sum(Nilai) from mahasiswa"
       result : 75

4. Avg : menghitung nilai rata-rata
       syntax : "select avg(Nilai) from mahasiswa"
       result : 80

5. Count : menghitung banyak record
      syntax : "select count * from mahasiswa"
      result : 3

5. Klausa Alternatif

     - Group by : mengelompokkan pemanggilan data, biasanya dilakukan untuk mengelompokkan
                        hasil kalkulasi pada fungsi aritmetika sebelumnya.
        contoh : "SELECT kode_brg, SUM(jml) as total FROM penjualan GROUP BY kode_brg"

     - Distinct : membuang data yang sama (saat view mode)
        contoh tanpa distinct : A0001, A0001, A0002, A0003, A0002
        dengan distinct : "SELECT DISTINCT kode_brg FROM penjualan" maka hasil = A0001, A0002,
        A0003

6. Insert Command

      Insert disini berarti menambahkan sebuah record baru ke dalam tabel / database yang telah ada.
Ada 3 buah alternatif untuk melakukan perintah ini, yakni :
1. Alternatif 1 : mengikutsertakan nama field yang ada pada tabel

       "Insert into mahasiswa (NIM, Nama_Lengkap, Nilai) values ('10104417', 'Kurnia Hidayat', 80)"
       Hasilnya adalah
       | NIM         | Nama_Lengkap | Nilai |
       | 10104417 | Kurnia Hidayat  | 80   |

       "Insert into mahasiswa (NIM, Nama_Lengkap) values ('10104427', 'Ogan Sukmawan')"
        Hasilnya adalah
        | NIM         | Nama_Lengkap   | Nilai    |
        | 10104427 | Ogan Sukmawan | <null> |

2. Alternatif 2 : tidak mengikutsertakan nama field yang ada pada tabel
    (syaratnya adalah value sama dengan jumlah fieldnya)

        "Insert into mahasiswa values ('10104422', 'Ekky Patria Kencana', 85)"
        Hasilnya adalah sukses :
        | NIM         | Nama_Lengkap         | Nilai |
        | 10104422 | Ekky Patria Kencana  | 85   |

       "Insert into mahasiswa values ('10104422', 85)"
         Hasilnya adalah ERROR karena jumlah inputan tidak sama dengan jumlah field
       yang terdapat pada tabel.

3. Alternatif 3 : menyalin data dari table yang memiliki field / attribut yang sama dengan field yang akan disalin
    (minimal sama dari type field nya)

       "Insert into mahasiswa select * from mhs"
         Hasilnya adalah semua data yang ada di table mhs akan dimasukkan ke table mahasiswa

7. Update Command

Perintah update berarti mengubah isi field dari sebuah tabel.

Misalkan semua kuantitas barang yang ada di tabel master barang hendak direset / diubah menjadi 0,
maka dapat dilakukan dengan perintah :
     " Update msbarang set qty=0 "

Selain itu, kita juga dapat meng-update beberapa field sekaligus dengan perintah :
     " Update msbarang set qty=0, min_qty=5 "

Masih ada beberapa hal lainnya yang dapat kita lakukan dengan update data.
Seperti update data dengan situasi tertentu (misal kode_brg = 'A0001' lalu update harga jual menjadi 10000)
     " Update msbarang set harga_jual = 10000 where kode_brg = 'A0001' "

8. Delete Command

 Perintah delete berarti menghapus isi field dari sebuah tabel.

 Misalkan semua barang yang ada di tabel temporary barang hendak dihapus,
 maka dapat dilakukan dengan perintah :
      " Delete * from temp_barang"

 Masih ada beberapa hal lainnya yang dapat kita lakukan dengan delete data.
 Seperti delete data dg situasi tertentu
 (misal hapus semua record pada tabel barang dg kode_brg = 'A0001')
      " Delete * from barang 10000 where kode_brg = 'A0001' "

jadi kurang lebih begitu, cukup panjang juga heheheh... semoga tulisan saya ini dapat bermanfaat... so tetap semngat...

Tidak ada komentar:

Posting Komentar