SQL - NR.ppt (650Kb)

  SQL Structured Query Language

  

Apakah SQL ?

  • Merupakan bahasa komputer standar ANSI (American National Standards Institute).
  • Dengan SQL kita dapat
    • Membuat basis data dan struktur tabel
    • Input, update, dan delete data dari tabel
    • Membuat query sederhana dan kompleks SQL

  • Versi SQL: Ms.Access, DB2, MS SQL server, Oracle, MySQL, Sybase,dll.

  

Pengelompokan Statement SQL

  

  

  

  

   

   UPDATE DELETE

  • Data Control Language (DCL)  GRANT  REVOKE

DDL

  • Membuat atau menghapus database dan mendefinisikan objek-objek
  • Objek database:

  Table Index Stored procedure Trigger

  • • Untuk membuat database dan objek-objek

    di dalam database

Membuat database

  Create Database Namadatabase

  Contoh

  Create Database Kepegawaian

Mengaktifkan database yang telah dibuat

  Use Namadatabase

  Contoh:

  Use Kepegawaian

Membuat Table

  Create Table NamaTable (Nama_field/kolom typedata (size), …)

  Contoh

  Create Table pegawai (NIP char (8) not null primary key, Nama varchar (25), Alamat varchar (50), telp varchar (15));

  • Untuk menghapus database dan objek- objek di dalam database

  Menghapus database dan tabel Drop Database Namadatabase Contoh Drop Database Kepegawaian

  Drop Table Namatable Contoh Drop Table pegawai

  • Berfungsi untuk memodifikasi tabel
    • menambah kolom / add
    • menghapus kolom / drop
    • merubah / modify
    • membuat primary key atau foreign key

Menambah Kolom / ADD

  Alter Table NamaTable ADD Namafield typedata (size)

  Contoh

  Alter Table Pegawai ADD status varchar (5); Alter Table Pegawai ADD telepon varchar(30) AFTER nama; Alter Table Pegawai ADD No int(2) first;

Merubah Tipe Data

  Alter Table NamaTable modify Namafield typedata (size)

  Contoh

  Alter Table Pegawai modify No int(3);

Merubah Nama Table (Rename)

  ALTER TABLE nama_table RENAME TO nama_table_baru;

  Contoh

  Alter table pegawai rename to pegawai_baru;

Menghapus Kolom/Field / DROP

  Alter Table NamaTable drop Namafield Contoh Alter Table Pegawai drop status;

  Menambah Primary Key

  Alter Table NamaTable add primary key (namafield) Contoh Alter Table departement add primary key (kd_depart)

  DML Memanipulasi data (menampilkan, menambahkan, dan menghapus data)

  Digunakan untuk Menambah Data dalam satu record

  Insert Into NamaTable (namafield1,namafield2,…) Values (‘nilaifield1’,’nilaifield2’,…);

  Contoh

  1. Insert Into pegawai (nip, nama, alamat) values (’01’,’andika’, ‘jl. A’);

  2. Insert Into pegawai values (’01’,’andika’, ‘jl. A’);

  3. Insert Into pegawai (nip, nama, alamat) values (’01’,’andika’, ‘jl. A’), values (’02’,’budi’, ‘jl. B’), values (’03’,’citra’, ‘jl. C’); Berfungsi untuk menampilkan data tertentu dari suatu table sesuai dengan keinginan pengguna.

  Select * from namatabel Contoh Select * from pegawai (menampilkan data di semua field yang ada dalam table pegawai)

  Simbol * artinya ‘all’ atau ‘semua’, digunakan untuk mewakili semua atribut dalam satu tabel

  Select namafield,namafield from namatabel

  Contoh

  Select nip,alamat from pegawai

  

Menampilkan sebagian atribut beserta datanya

  Select * from namatabel where namafield=‘nilaifield’

  Contoh

  Select * from pegawai where alamat=‘seutui’

  Menampilkan record tertentu berdasarkan kondisi yang diberikan

  Select distinct namafield from namatabel Contoh Select distinct alamat from pegawai

  

Menampilkan satu field beserta recordnya yang

tidak akan berulang Baris-baris berulang (duplicate) tidak akan dipaparkan. Sekiranya kita memilih lebih dari satu atribut ketika menggunakan

  DISTINCT, hasilnya adalah gabungan atribut-atribut yang unik

  

Menampilkan beberapa field beserta recordnya

yang sama tidak akan berulang

  Select distinct namafield1,namafield2 from namatabel

  Contoh

  Select distinct alamat,status from pegawai

  satu baris nip [03] tidak dipaparkan kerana berulang

Menggunakan Ungkapan Aritmatik dalam Pernyataan +, -, /, *

  Select namafield ungkapan aritmatik from namatabel

  Contoh

  Select nama,gaji/2 from pegawai

  • Kita boleh menamakan semula suatu atribut (walaupun telah mempunyai nama) dengan menggunakan AS

  SELECT nama, gaji/2 AS gajisetengah FROM pegawai

  • Kita dapat membuat dan mengubah judul field yang akan di tampilkan

  Select namafield As namafieldbaru from namatabel Contoh Select nama As namalengkap from pegawai

  

menampilkan nama dari tabel pegawai dimana field nama

pada hasil SQL di ubah menjadi namalengkap

Menggunakan Simbol perbandingan <, >, = untuk membuat pemilihan

  Select namafield from namatabel where simbol perbandingan

  Contoh

  Select nama,gaji from pegawai where gaji &gt; 1000000; Select nama,gaji from pegawai where gaji &lt; 900000; Select nama,gaji from pegawai where gaji = 900000;

Menggunakan operator Boolean Seperti And OR dan Not

  Select namafield1,namafield2 from namatabel where namafield1 operatorboolean namafield2

  Contoh

  Select alamat,gaji from pegawai where alamat=‘seutui’ and gaji &gt; 1000000; Select alamat,gaji from pegawai where alamat=‘prada’ Or gaji &gt; 900000; Select * from pegawai where alamat=‘seutui’ Or alamat=‘prada’; Select * from pegawai where Not alamat=‘seutui’;

Operator Logik Boolean

  • Apabila AND digunakan, disemua syarat sebelum dan setelah AND harus benar untuk suatu tuple dipilih
  • Apabila OR digunakan, hanya salah satu syarat sebelum atau sesudah OR harus benar ataupun keduanya benar untuk suatu tuple dipilih
  • • Apabila NOT digunakan, yang bukan syarat yang

    akan di tampilkan

Jarak Nilai Sebagai Kriteria Kita boleh mengunakan pernyataan BETWEEN

  Select namafield from namatabel where namafield between nilai and nilai

  Contoh

  Select nama,gaji from pegawai where gaji between 850000 and 1000000

Operator In

  Pencocokan data kondisi pencarian dengan salah satu data yang ada pada suatu daftar nilai

  Select namafield from namatabel where namafield In (nilaifield1,nilaifield2) Contoh Select * from pegawai where alamat In (‘seutui’,’prada’) Select nama,alamat from pegawai where alamat In (‘seutui’,’prada’)

Operator Like

  • Untuk pencarian data
  • Bekerja pada type data char, varchar, text

  Select namafield from namatabel where namafield Like ‘%ekspresi%’ Contoh Select * from pegawai where alamat Like ‘%andi%’ (menampilkan semua klolom dari tabel pegawai yang namanya mengandung kata andi)

Fungsi Agregat

  

fungsi yang mengambil suatu kumpulan nilai-nilai sebagai

input dan mengembalikan satu nilai sebagai output

  Select fungsi agregat SUM/AVG/MIN/MAX/COUNT (namafield) As namafieldbaru from nama table

SQL menyediakan 5 fungsi

  AVG : Rata-rata MIN : Minimum MAX : Maksimum SUM : PenJumlahan isi record COUNT : menjumlahkan data

  • Operasi MIN, MAX dan COUNT dapat dilakukan dalam atribut yang mempunyai

    jenis data rentetan (string) seperti Char,

    Text, dan Varchar • Operasi AVG dan SUM hanya boleh dilakukan keatas atribut-atribut yang mempunyai jenis data numerik yang

    berjenis int, bigint, decimal, bit, numeric,

    real, smallint, tinyint.

  Select sum (tunjangan) As jlh_tunj from pegawai

  Menampilkan jumlah keseluruhan dari tunjangan yang diberikan

  Select Avg (gaji) As rata_gaji from pegawai c) Min  Untuk mencari atau menampilkan nilai terendah

  Select min (gaji) As Gaji_min from pegawai

  (Menampilkan gaji terendah dari tabel pegawai)

  Select min (gaji) As Gaji_min from pegawai where status=‘nikah’

  (Menampilkan gaji terendah dari tabel pegawai yang statusnya telah menikah)

  Select max (gaji) As Gaji_max from pegawai

  (Menampilkan gaji terendah dari tabel pegawai)

  Select max (gaji) As Gaji_max from pegawai where status=‘nikah’

  (Menampilkan gaji terendah dari tabel pegawai yang statusnya telah menikah)

  

e) COUNT  Menghitung jumlah record yang sesuai

dengan kondisi

  Select count (nip) As jlh_peg from pegawai

  (Menampilkan jumlah seluruh pegawai dari tabel pegawai)

  Select count (nip) As jlh_peg from pegawai where status=‘nikah’

  (Menampilkan jumlah seluruh pegawai dari tabel pegawai yang statusnya telah menikah)

Pengelompokan Record (Group by)

  Pada kondisi tertentu, sekumpulan record dapat dikelompokkan berdasarkan satu atau lebih field yang terdapat pada sebuah tabel atau query.

  Select namafield1,namafield2 from namatabel Group by field pengacu Contoh Select jeniskelamin,count (*) as jumlah from mahasiswa group by jeniskelamin

  JenisKelamin jumlah

Laki-Laki

  5 Hasil Perempuan

  4 Pengurutan (Order by)

  • Hasil dari query dapat di urutkan

    berdasarkan pada satu atau lebih kolom.

  nim nama

  Select namafield1 from namatabel where kriteria order by namafield

  2008 Ana 2009 Devi

  Select nim,nama where jeniskelamin=’perempuan’

  2010 July

  order by nama

  2011 Kiki

  Select nim,nama where jeniskelamin=’perempuan’ order by nama asc Select nim,nama where jeniskelamin=’perempuan’ order by nama desc

Pernyataan Having

  • menampilkan kelompok-kelompok data tertentu
  • -having berbeda dengan where, pernyataan where digunakan

    untuk memberikan criteria sebelum pengelompokan dan melakukan penyaringan baris. Sedangkan having digunakan

    untuk memberikan criteria setelah pengelompokan dilakukan,

    menyaring kelompok, dan menentukan kondisi bagi Group By

  Select namafield1,… from namatabel Group by field pengacu Having kondisi Contoh Select barang, count (jumlah) As totalfaktur from Torder Group by idbarang having idbarang=‘A009’

  Berfungsi untuk mengubah satu atau lebih data yang terdapat pada satu atau lebih kolom tabel

  Update namatabel set namafield=nilai where kondisi Contoh Update pegawai set alamat=‘pango’ where nip=’01’ Menukar record dalam Tabel

  Update namatabel set namafield=nilai Contoh Update pegawai set gaji=gaji+12000

  

pernyataan diatas akan menambah ‘gaji’ yang awal dengan

  • 12000 dalam tabel pegawai

  Berfungsi untuk menghapus satu atau beberapa record dalam suatu tabel.

  Delete from namatabel where kondisi Contoh Delete from pegawai where nip=’01’

  

LATIHAN

  • Buat table MAHASISWI_CANTIK

  create table mahasiswi_cantik (npm varchar(10), nama varchar(50), tempat_lahir varchar(40), tanggal_lahir date, fakultas varchar(30), jurusan varchar(30), primary key(npm));

  • • Insert Data ke table MAHASISWI_CANTIK

  insert into mahasiswi_cantik values ('201501001','Naura Krasiva Elsalna','Jakarta', 1998-10-12, 'Ilmu Komputer','Teknik Informatika'); Query OK, 1 row affected, 1 warning (0.04 sec) insert into mahasiswi_cantik values ('201502001','Nurul Hikmah','Jakarta',1997-01-01,

  'Sastra','Sastra Inggris'); Query OK, 1 row affected, 1 warning (0.07 sec)

  Tampilkan semua data MAHASISWI_CANTIK select * from mahasiswi_cantik;

  • | npm | nama | tempat_lahir | tanggal_lahir | fakultas | jurusan |

    • | 201501001 | Naura Krasiva E | Jakarta | 0000-00-00| Ilmu Komputer | Teknik Informatika | | 201502001 | Nurul Hikmah | Jakarta | 0000-00-00| Sastra | Sastra Inggris |
      • +-----------+-----------------------+--------------+---------------+---------------+--------------------

        82 rows in set (0.00 sec)

  Tampilkan npm, nama, dan jurusan

Select npm, nama, jurusan from mahasiswi_cantik;

  

LATIHAN 1

Contoh 1

select NAMA from MAHASISWA

  Output :

  === LATIHAN 1 Contoh 2 select NIM, NAMA, SEX from MAHASISWA

  Output:

  === LATIHAN 1 Contoh 3 select distinct SEX from MAHASISWA

  Output:

  === LATIHAN 1 Contoh 4 select * from MAHASISWA

  Output:

  • * Menampilkan semua data

  === LATIHAN 1 Contoh 5 select NIM, NAMA as NAMA_MHS, SEX as JENIS_KELAMIN from MAHASISWA

  Output: ‘as’ untuk mengganti tampilan header

  

LATIHAN 2

  • WHERE Clause digunakan untuk

  menyeleksi data atau record sesuai dengan kondisi yang diinginkan.

  === LATIHAN 2 Contoh 1 select * from KULIAH where KODE_KUL = ‘ M001 ‘

  Output:

  === LATIHAN 2 Contoh 2

Select * From KULIAH Where SEMESTER = 6 and SKS >= 2

  Output: Menampilkan semua atribut dari tabel dengan kriteria semester 6 dan memiliki jumlah sks lebih dari atau sama dengan 2.

  === LATIHAN 2 Contoh 3 select * from KULIAH where SEMESTER between 3 and 5; Output: menampilkan record-record kuliah yang diselenggarakan antara semester 3 s/d semster 5.

  Between kriteria yang berbentuk range nilai tertentu

  === LATIHAN 2 Contoh 4

Select * From KULIAH Where NAMA_KULIAH like ‘ S%’

  Output: Menampilkan record-record KULIAH yang nama mata kuliahnya diawali dengan huruf ‘ S ‘.

  === LATIHAN 2 Contoh 5

Select * from KULIAH where NAMA_KULIAH like ‘ %A ‘

  Output: Menampilkan record pada tabel kuliah untuk mata kuliah yang diakahiri huruf ‘A ‘.

  === LATIHAN 2 Contoh 6 SELECT * FROM karyawan WHERE nama LIKE 'A_n';

  Menampilkan data dari table karywan yang mempunyai nama dengan huruf awal 'A' dan huruf akhir 'n', seperti nama Aan, Andin, Abon, dan lain sebagainya.

  Contoh 7 SELECT * FROM karyawan WHERE nama NOT LIKE 'A%';

  Menampilkan data pada tabel karyawan yang mempunyai nama dengan huruf pertama TIDAK mengandung huruf 'A' seperti Bagus, Cahyo, Dani, dan lain sebagainya.

  === LATIHAN 2 - Sorting Contoh 8 SELECT * FROM mahasiswa ORDER BY nama ASC;

  Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama (ascending)

  === LATIHAN 2 Contoh 9 SELECT * FROM mahasiswa ORDER BY nama DESC;

  Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama (descending)

  === LATIHAN 2 Contoh 10 SELECT * FROM mahasiswa ORDER BY nama ASC, asal ASC;;

  Tampilkan semua data Mahasiswa dan urutkan berdasarkan nama dan asal (ascending)

Dokumen yang terkait

Ade Apriliadi Nugraha Lubis, Rosnita, Suhardi Marli Program Studi Pendidikan Guru Sekolah Dasar FKIP Untan Pontianak Email: adeapriliadinugrahalubisgmail.com Abstract - PENGARUH MEDIA AUDIO VISUAL TERHADAP HASIL BELAJAR IPA PESERTA DIDIK DI SEKOLAH DASAR

0 0 7

1 PENGARUH KEPEMIMPINAN KEPALA SEKOLAH DAN MOTIVASI GURU TERHADAP MUTU LAYANAN DI SMK Indro Wiretno, H.M Chiar, M. Syukri Program Magister Administrasi Pendidikan FKIP Untan Pontianak Email : indrowiretno68gmail.com Abstract - PENGARUH KEPEMIMPINAN KEPALA

0 0 10

Dudi Rosmedi, M.Chiar, M. Syukri Program Pendidikan Magister Administrasi Pendidikan Fkip Untan Pontianak Email : dudirosmedyyahoo.com Abstract - PENGARUH KEPEMIMPINAN SITUASIONAL DAN BUDAYA SEKOLAH TERHADAP PRODUKTIVITAS SEKOLAH PADA SMA

0 0 10

Rusidi, Rustiyarso, Izhar Salim Program Studi Pendidikan Sosiologi FKIP UNTAN Pontianak Email: rusidisos2gmail.com Abstract - ANALISIS PENERAPAN PENDIDIKAN KARAKTER OLEH GURU SOSIOLOGI PADA SISWA KELAS X

0 1 10

ANALISIS PELAKSANAAN FULL DAY SCHOOL DI SMK NEGERI 1 PONTIANAK Endah Luthfatul Amelia,Maria Ulfah, Warneri Program Studi Pendidikan Ekonomi FKIP UNTAN, Pontianak Email: endahluthfatulameliagmail.com Abstract - ANALISIS PELAKSANAAN FULL DAY SCHOOL DI SMK N

0 0 10

PENINGKATAN KEMAMPUAN MENYIMAK MELALUI METODE MENDONGENG MENGGUNAKAN MEDIA PAPAN FLANEL Krisensiana, Marmawi R, Dian Miranda Program Studi Pendidikan Anak Usia Dini, FKIP Untan Pontianak Email: kirisensiana21gmail.com Abstract - PENINGKATAN KEMAMPUAN MENY

0 0 11

Ignatia Eni Sri Prabasari, M. Syukri, Wahyudi Program Studi Magister Administrasi Pendidikan FKIP UNTAN Pontianak E-mail: ignatiaenispmail.com Abstract - SUPERVISI AKADEMIK KEPALA SEKOLAH STUDI KASUS PEMBINAAN KINERJA GURU DALAM PENGELOLA PEMBELAJARAN DI

0 0 11

TUGAS AKHIR - Eksistensi Pasar Tradisional Menghadapi Pasar Modern di Kota Surakarta

0 0 103

STUDI EVALUASI PEMANFAATAN DANA BAGI HASIL CUKAI HASIL TEMBAKAU (DBH CHT) DI SURAKARTA TAHUN 2008 - 2010

0 0 86

KONSEP PENGANTAR KARYA TUGAS AKHIR - Perancangan promosi wisata kecamatan Tegalalang melalui media komunikasi visual

1 3 111