Pengelompokan Data
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)

a) Where untuk filter data
b) Where untuk relasi
●

Alias

●

Order By

●

Group By

●

Having
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data
b) Where untuk relasi

●

Alias

●

Order By

●

Group By

●

Having
Operator Relasional
Operator
>
>=
<
<=
=
<>

Keterangan

Contoh

Lebih besar

(4>6) = FALSE

Lebih besar atau sama
dengan

(8>=6) = TRUE

Lebih kecil

(3<7) = TRUE

Lebih kecil atau sama
dengan

(5<=5) = TRUE

Sama dengan

(5=6) = FALSE

Tidak sama dengan

(3<>4) =TRUE
Operator Logika

Operator

Keterangan

Contoh

AND

Konjungsi

(TRUE AND FALSE) = FALSE
(TRUE AND TRUE) = TRUE

OR

Disjungsi

(TRUE OR FALSE) = TRUE
(FALSE OR FALSE) = FALSE

Negasi

(TRUE) = FALSE

NOT
Operator Aritmatika

Operator

Keterangan

Contoh

+

Penambahan

12 + 2 = 14

-

Pengurangan

12 – 2 = 10

*

Perkalian

12 * 2 = 24

/

Pembagian

12 / 2 = 6

Modulus (Sisa Bagi)

10 MOD 3 = 1

MOD
Ekspresi Aritmatika
Suatu ekspresi yang melibatkan tipe data bilangan (NUMBER) dan tanggal (DATE)
dapat menggunakan ekspresi aritmatika.
Contoh:
SELECT last_name, salary, salary+300
FROM employees;
Operator Presedence
Perkalian dan pembagian memiliki prioritas (presedence) lebih tinggi daripada
penambahan dan pengurangan
Contoh:
SELECT last_name, salary, 12*salary+100
FROM employees;
Penggunaan Tanda Kurung
Penggunaan tanda kurung memiliki prioritas paling tinggi dibanding presedensi
operator yang lain.
Contoh:
SELECT last_name, salary, 12*(salary+100)
FROM employees;
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data
b) Where untuk relasi

●

Alias

●

Order By

●

Group By

●

Having
Select (Menghilangkan Duplikasi)
Distinct Digunakan apabila kita ingin menghilangkan duplikasi
dari hasil query (hasil query yang sama ditampilkan sekali)
SELECT [DISTINCT] select_list
FROM table_source
Select (Menghilangkan Duplikasi)
Contoh :
Untuk menampilkan nomor-nomor anggota yang sedang
meminjam atau belum mengembalikan:
SELECT NoAnggota FROM Peminjaman

NoAnggota
ID001
ID002
ID001
ID003

NoAnggota

Pada hasil query tersebut terdapat NoAnggota yang
ditampilkan lebih dari sekali. Untuk meniadakan
duplikasi, querynya adalah sbb:

ID001

SELECT DISTINCT NoAnggota FROM Peminjaman

ID003

ID002
Select Untuk Fungsi Agregat
●

●

Fungsi Agregat : fungsi yang hasilnya diambil dari proses tiap baris pada
tabel
Proses tersebut akan mengolah nilai sebuah field atau lebih mulai baris
pertama sampai seluruh baris

Fungsi-fungsi tersebut yakni:
●

COUNT(kolom) : mendapatkan jumlah baris

●

SUM(kolom) : mendapatkan hasil penjumlahan kolom

●

MAX(kolom) : mendapatkan nilai tertinggi

●

MIN(kolom) : mendapatkan nilai terendah

●

AVG(kolom) : mendapatkan nilai rata-rata
Select Untuk Fungsi Agregat
Studi Kasus Klinik
Data Dokter

Data Periksa

Data Pasien
Select Untuk Fungsi Agregat
CONTOH MIN :
Tampilkan umur pasien yang mempunyai usia paling muda !
Query:
select min (umur) as umur from pasien
Data Pasien

Hasil
Select Untuk Fungsi Agregat
CONTOH MAX
Tampilkan umur dokter yang mempunyai usia paling tua !
Query :
select max (umur) as umur from dokter
Data Dokter

Hasil
Select Untuk Fungsi Agregat
CONTOH AVG
Tampilkan umur rata-rata dari pasien !
Query :
select avg (umur) as umur from pasien
Data Pasien

Hasil
Select Untuk Fungsi Agregat
CONTOH SUM
Jumlahkan semua umur pasien !
Query :
select sum (umur) as total_umur from pasien
Data Pasien

Hasil
Select Untuk Fungsi Agregat
CONTOH COUNT
Hitunglah berapa kali setiap dokter memeriksa
pasien ! Kelompokkan dan urutkan berdasarkan id dokter
Query :
select did, count (did) as jumlah from periksa
group by did
order by did

Data Periksa

Hasil
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data
b) Where untuk relasi

●

Alias

●

Order By

●

Group By

●

Having
Syntax Where (Lanjutan)
➔

Klausa ini biasanya digunakan untuk:
1. FILTER (PENYARINGAN) DATA
2. MERELASIKAN/MENGHUBUNGKAN QUERY YANG DISUSUN
LEBIH DARI SATU TABEL.

➔

➔

Penerapannya adalah dengan memasukkan suatu ekspresi
kondisi setelah klausa WHERE. Bentuk umum → WHERE
<kondisi>
Jika <kondisi> lebih dari satu, maka bisa ditambahkan dengan
AND atau OR (sesuai dengan kebutuhan).
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)

a)Where untuk filter data
b) Where untuk relasi
●

Alias

●

Order By

●

Group By

●

Having
Syntax Where Untuk Filter Data
Where untuk filter atau pencarian data di dalam SQL bisa dalam
beberapa bentuk ekspresi, yakni:
1. OPERASI PEMBANDINGAN
2. OPERASI PENDEKATAN POLA
3. OPERASI PEMBANDINGAN DENGAN SEKUMPULAN NILAI
Syntax Where Untuk Filter Data
OPERASI PEMBANDINGAN
1. Menampilkan anggota yang berjenis kelamin laki-laki:
SELECT * FROM Anggota WHERE JK="L“
2. Menampilkan Anggota yang tahun kelahirannya lebih dari 1985 :
SELECT * FROM Anggota WHERE year(TglLahir) > 1985
3. Menampilkan Anggota wanita yang lahir di bulan Juni:
SELECT * FROM anggota WHERE JK="P" AND month(TglLahir)=6
4. Menampilkan idKoleksi yang belum dikembalikan (TglKembali belum terisi)
SELECT * FROM Peminjaman WHERE TglKembali IS NULL
Syntax Where Untuk Filter Data
OPERASI LIKE (PENDEKATAN POLA)
●

Operasi ini, hanya untuk pembandingan nilai bertipe string

●

Digunakan untuk mengenali string-string yang memiliki pola tertentu.

●

Di dalam operasi ini, digunakan simbol-simbol berikut:
➔

➔

simbol % artinya mewakili 0 s/d tak terhingga dari sembarang
karakter
simbol _ artinya mewakili satu sembarang karakter
Syntax Where Untuk Filter Data
OPERASI LIKE (PENDEKATAN POLA)
●

Menampilkan anggota yang nama depannya "Budi":
SELECT * FROM anggota WHERE Nama LIKE "Budi%"

●

Menampilkan Anggota yang huruf ketiga namanya adalah “d”:
SELECT * FROM anggota WHERE Nama LIKE "_ _d%"

●

Menampilkan koleksi yang judulnya terdapat kata “pemrograman”:
SELECT * FROM koleksi WHERE Judul LIKE "%pemrograman%"
Syntax Where Untuk Filter Data
OPERASI IN ATAU NOT IN
●

●

Ekspresi ini digunakan untuk membandingkan dengan sebuah
kumpulan nilai
Kumpulan nilai bisa berupa:
1. Nilai-nilai yang diisikan
2. Query tunggal (query yg hasilnya hanya terdapat sebuah
kolom saja )
Syntax Where Untuk Filter Data
OPERASI IN ATAU NOT IN (NILAI YANG DIISIKAN)
Nilai-nilai yang diisikan, maksudnya Anda sendiri yang mengisikan
nilai-nilai tersebut di dalam query
Contoh :
1. Menampilkan koleksi yang jenisnya buku dan majalah (idTipeKoleksi=1
atau 2) → SELECT * FROM koleksi WHERE idTipeKoleksi IN (1, 2)
2. Menampilkan anggota yang selain mahasiswa atau dosen
(idJenisAnggota selain 2 dan 3) →
SELECT * FROM anggota WHERE IDJenisAnggota NOT IN (2, 3)
Syntax Where Untuk Filter Data
OPERASI IN ATAU NOT IN (BERDASARKAN QUERY TUNGGAL)
Query tunggal, yakni nilai-nilai yang digunakan sebagai pembanding diambil dari sebuah
query yang hasilnya hanya satu kolom saja
Contoh :
1. Menampilkan anggota yang belum pernah meminjam buku sama sekali → SELECT *
FROM anggota WHERE id NOT IN (SELECT DISTINCT idAnggota FROM
Peminjaman)
2. Menampilkan koleksi yang sedang dipinjam → SELECT * FROM koleksi WHERE
idKoleksi IN (SELECT idKoleksi FROM Peminjaman WHERE TglKembali is NULL)
Syntax Where Untuk Filter Data
Operasi BETWEEN
Operator BETWEEN … AND memilih data antara dua nilai. Nilai dapat berupa
angka, teks, atau tanggal.
SELECT nama_kolom FROM nama_tabel WHERE nama_kolom BETWEEN
nilai1 AND nilai2
Contoh :
Select kode_pas, kode_dok from berobat Where tgl_berobat
Between ‘2011-04-01’ AND ‘2011-04-03’;
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data

b)Where untuk relasi
●

Alias

●

Order By

●

Group By

●

Having
Syntax Where Untuk Relasi
PENGGUNAAN TANDA TITIK (.)
●

●

Jika ada nama field yang sama dari tabel yang disertakan, maka sebelum
nama field, berikan nama tabel diikuti sebuah titik (.)
Misal untuk query sebelumnya bisa juga ditulis sbb:
SELECT Koleksi.idKoleksi, Koleksi.Judul,
Pengarang.Nama
FROM Koleksi, Pengarang
WHERE Koleksi.idPengarang=Pengarang.idPengarang
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)

a) Where untuk filter data
b) Where untuk relasi
●

Alias

●

Order By

●

Group By

●

Having
Alias
●

Sebuah tabel bisa diberi nama lain (alias) :
1. Untuk membedakan field jika sebuah query mengambil tabel
yang sama lebih dari satu
2. Untuk memperpendek pengetikan

●

Nama alias ditulis setelah nama tabel yang bersangkutan
Alias (Membedakan Field)
Contoh :
select proyek.nama, departemen.nama from proyek, departemen
where proyek.id = departemen.id order by proyek.id

select proyek.nama as nama_pro, departemen.nama as nama_dept
from proyek, departemen where proyek.id = departemen.id
order by proyek.id
Alias (Memperpendek Pengetikan)
Contoh :
select proyek.nama, departemen.nama from proyek, departemen
where proyek.id = departemen.id order by proyek.id

select p.nama as nama_pro, d.nama as nama_dept
from proyek p, departemen d where p.id = d.id
order by p.id
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data
b) Where untuk relasi

●

Alias

●

Order By

●

Group By

●

Having
Pengurutan Data (Order By)
●

●

Pencarian data akan jauh lebih mudah jika data yang tersedia telah diurutkan
berdasarkan field tertentu.
Misalnya untuk mencari data customer, akan lebih mudah mencari berdasarkan
urutan nama.
Select field 1, field 2,… field –n
From tabel
Order by field
Pengurutan Data (Order By)
1. select * from customer

2. select nama, alamat from customer
order by nama
Pengurutan Data (Order By)
3. Pengurutan ASC dan DESC
select nama, alamat from customer
order by nama asc
select nama, alamat from customer
order by nama desc
Pengurutan Data (Order By)
4. Pengurutan berdasarkan lebih dari satu atribut
SELECT tahun, pengarang, judul_buku, penerbit
FROM buku
ORDER BY tahun, pengarang;
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data
b) Where untuk relasi

●

Alias

●

Order By

●

Group By

●

Having
Penggolongan Data (Group By)
●

●

●

Pada kasus seleksi data sering kali menampilkan sekumpulan data
berdasarkan kelompok data tertentu.
Penting untuk diperhatikan, kolom yang disertakan setelah GROUP
BY harus sama dengan kolom yang dipilih pada setelah klausa
SELECT
Biasanya untuk kasus pengelompokan data disertakan fungsi
aggregate : min(), max(), avg, sum(), dan count()
Penggolongan Data (Group By)
Contoh :
SELECT OrderID, Sum (Quantity) FROM
Order_Detail GROUP BY OrderID
SELECT OrderID, Min (UnitPrice), Max
(UnitPrice) FROM Order_Detail GROUP BY OrderID
Pengelompokan Data
●

Operator

●

SQL Syntax : Select (Lanjutan)

●

SQL Syntax : Where (Lanjutan)
a) Where untuk filter data
b) Where untuk relasi

●

Alias

●

Order By

●

Group By

●

Having
Kondisi Agregat (Having)
Jika untuk filter query biasa kita menggunakan klause where, maka
klausa having digunakan untuk filter fungsi-fungsi aggregate.
Contoh :
untuk menampilkan jumlah buku per kode penerbit, tetapi hanya
yang jumlahnya >10 saja yang ditampilkan.
SELECT idPenerbit, COUNT(*) FROM koleksi
GROUP BY idPenerbit HAVING COUNT(*)>10
Syntax Tambahan
MENAMPILKAN STRUKTUR TABEL
Untuk menampilkan struktur tabel digunakan DESCRIBE.
Formatnya: DESCRIBE [namatabel]
Contoh:
DESCRIBE employees

Slide 4 pengelompokan_data

  • 1.
  • 2.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 3.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 4.
    Operator Relasional Operator > >= < <= = <> Keterangan Contoh Lebih besar (4>6)= FALSE Lebih besar atau sama dengan (8>=6) = TRUE Lebih kecil (3<7) = TRUE Lebih kecil atau sama dengan (5<=5) = TRUE Sama dengan (5=6) = FALSE Tidak sama dengan (3<>4) =TRUE
  • 5.
    Operator Logika Operator Keterangan Contoh AND Konjungsi (TRUE ANDFALSE) = FALSE (TRUE AND TRUE) = TRUE OR Disjungsi (TRUE OR FALSE) = TRUE (FALSE OR FALSE) = FALSE Negasi (TRUE) = FALSE NOT
  • 6.
    Operator Aritmatika Operator Keterangan Contoh + Penambahan 12 +2 = 14 - Pengurangan 12 – 2 = 10 * Perkalian 12 * 2 = 24 / Pembagian 12 / 2 = 6 Modulus (Sisa Bagi) 10 MOD 3 = 1 MOD
  • 7.
    Ekspresi Aritmatika Suatu ekspresiyang melibatkan tipe data bilangan (NUMBER) dan tanggal (DATE) dapat menggunakan ekspresi aritmatika. Contoh: SELECT last_name, salary, salary+300 FROM employees;
  • 8.
    Operator Presedence Perkalian danpembagian memiliki prioritas (presedence) lebih tinggi daripada penambahan dan pengurangan Contoh: SELECT last_name, salary, 12*salary+100 FROM employees;
  • 9.
    Penggunaan Tanda Kurung Penggunaantanda kurung memiliki prioritas paling tinggi dibanding presedensi operator yang lain. Contoh: SELECT last_name, salary, 12*(salary+100) FROM employees;
  • 10.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 11.
    Select (Menghilangkan Duplikasi) DistinctDigunakan apabila kita ingin menghilangkan duplikasi dari hasil query (hasil query yang sama ditampilkan sekali) SELECT [DISTINCT] select_list FROM table_source
  • 12.
    Select (Menghilangkan Duplikasi) Contoh: Untuk menampilkan nomor-nomor anggota yang sedang meminjam atau belum mengembalikan: SELECT NoAnggota FROM Peminjaman NoAnggota ID001 ID002 ID001 ID003 NoAnggota Pada hasil query tersebut terdapat NoAnggota yang ditampilkan lebih dari sekali. Untuk meniadakan duplikasi, querynya adalah sbb: ID001 SELECT DISTINCT NoAnggota FROM Peminjaman ID003 ID002
  • 13.
    Select Untuk FungsiAgregat ● ● Fungsi Agregat : fungsi yang hasilnya diambil dari proses tiap baris pada tabel Proses tersebut akan mengolah nilai sebuah field atau lebih mulai baris pertama sampai seluruh baris Fungsi-fungsi tersebut yakni: ● COUNT(kolom) : mendapatkan jumlah baris ● SUM(kolom) : mendapatkan hasil penjumlahan kolom ● MAX(kolom) : mendapatkan nilai tertinggi ● MIN(kolom) : mendapatkan nilai terendah ● AVG(kolom) : mendapatkan nilai rata-rata
  • 14.
    Select Untuk FungsiAgregat Studi Kasus Klinik Data Dokter Data Periksa Data Pasien
  • 15.
    Select Untuk FungsiAgregat CONTOH MIN : Tampilkan umur pasien yang mempunyai usia paling muda ! Query: select min (umur) as umur from pasien Data Pasien Hasil
  • 16.
    Select Untuk FungsiAgregat CONTOH MAX Tampilkan umur dokter yang mempunyai usia paling tua ! Query : select max (umur) as umur from dokter Data Dokter Hasil
  • 17.
    Select Untuk FungsiAgregat CONTOH AVG Tampilkan umur rata-rata dari pasien ! Query : select avg (umur) as umur from pasien Data Pasien Hasil
  • 18.
    Select Untuk FungsiAgregat CONTOH SUM Jumlahkan semua umur pasien ! Query : select sum (umur) as total_umur from pasien Data Pasien Hasil
  • 19.
    Select Untuk FungsiAgregat CONTOH COUNT Hitunglah berapa kali setiap dokter memeriksa pasien ! Kelompokkan dan urutkan berdasarkan id dokter Query : select did, count (did) as jumlah from periksa group by did order by did Data Periksa Hasil
  • 20.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 21.
    Syntax Where (Lanjutan) ➔ Klausaini biasanya digunakan untuk: 1. FILTER (PENYARINGAN) DATA 2. MERELASIKAN/MENGHUBUNGKAN QUERY YANG DISUSUN LEBIH DARI SATU TABEL. ➔ ➔ Penerapannya adalah dengan memasukkan suatu ekspresi kondisi setelah klausa WHERE. Bentuk umum → WHERE <kondisi> Jika <kondisi> lebih dari satu, maka bisa ditambahkan dengan AND atau OR (sesuai dengan kebutuhan).
  • 22.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a)Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 23.
    Syntax Where UntukFilter Data Where untuk filter atau pencarian data di dalam SQL bisa dalam beberapa bentuk ekspresi, yakni: 1. OPERASI PEMBANDINGAN 2. OPERASI PENDEKATAN POLA 3. OPERASI PEMBANDINGAN DENGAN SEKUMPULAN NILAI
  • 24.
    Syntax Where UntukFilter Data OPERASI PEMBANDINGAN 1. Menampilkan anggota yang berjenis kelamin laki-laki: SELECT * FROM Anggota WHERE JK="L“ 2. Menampilkan Anggota yang tahun kelahirannya lebih dari 1985 : SELECT * FROM Anggota WHERE year(TglLahir) > 1985 3. Menampilkan Anggota wanita yang lahir di bulan Juni: SELECT * FROM anggota WHERE JK="P" AND month(TglLahir)=6 4. Menampilkan idKoleksi yang belum dikembalikan (TglKembali belum terisi) SELECT * FROM Peminjaman WHERE TglKembali IS NULL
  • 25.
    Syntax Where UntukFilter Data OPERASI LIKE (PENDEKATAN POLA) ● Operasi ini, hanya untuk pembandingan nilai bertipe string ● Digunakan untuk mengenali string-string yang memiliki pola tertentu. ● Di dalam operasi ini, digunakan simbol-simbol berikut: ➔ ➔ simbol % artinya mewakili 0 s/d tak terhingga dari sembarang karakter simbol _ artinya mewakili satu sembarang karakter
  • 26.
    Syntax Where UntukFilter Data OPERASI LIKE (PENDEKATAN POLA) ● Menampilkan anggota yang nama depannya "Budi": SELECT * FROM anggota WHERE Nama LIKE "Budi%" ● Menampilkan Anggota yang huruf ketiga namanya adalah “d”: SELECT * FROM anggota WHERE Nama LIKE "_ _d%" ● Menampilkan koleksi yang judulnya terdapat kata “pemrograman”: SELECT * FROM koleksi WHERE Judul LIKE "%pemrograman%"
  • 27.
    Syntax Where UntukFilter Data OPERASI IN ATAU NOT IN ● ● Ekspresi ini digunakan untuk membandingkan dengan sebuah kumpulan nilai Kumpulan nilai bisa berupa: 1. Nilai-nilai yang diisikan 2. Query tunggal (query yg hasilnya hanya terdapat sebuah kolom saja )
  • 28.
    Syntax Where UntukFilter Data OPERASI IN ATAU NOT IN (NILAI YANG DIISIKAN) Nilai-nilai yang diisikan, maksudnya Anda sendiri yang mengisikan nilai-nilai tersebut di dalam query Contoh : 1. Menampilkan koleksi yang jenisnya buku dan majalah (idTipeKoleksi=1 atau 2) → SELECT * FROM koleksi WHERE idTipeKoleksi IN (1, 2) 2. Menampilkan anggota yang selain mahasiswa atau dosen (idJenisAnggota selain 2 dan 3) → SELECT * FROM anggota WHERE IDJenisAnggota NOT IN (2, 3)
  • 29.
    Syntax Where UntukFilter Data OPERASI IN ATAU NOT IN (BERDASARKAN QUERY TUNGGAL) Query tunggal, yakni nilai-nilai yang digunakan sebagai pembanding diambil dari sebuah query yang hasilnya hanya satu kolom saja Contoh : 1. Menampilkan anggota yang belum pernah meminjam buku sama sekali → SELECT * FROM anggota WHERE id NOT IN (SELECT DISTINCT idAnggota FROM Peminjaman) 2. Menampilkan koleksi yang sedang dipinjam → SELECT * FROM koleksi WHERE idKoleksi IN (SELECT idKoleksi FROM Peminjaman WHERE TglKembali is NULL)
  • 30.
    Syntax Where UntukFilter Data Operasi BETWEEN Operator BETWEEN … AND memilih data antara dua nilai. Nilai dapat berupa angka, teks, atau tanggal. SELECT nama_kolom FROM nama_tabel WHERE nama_kolom BETWEEN nilai1 AND nilai2 Contoh : Select kode_pas, kode_dok from berobat Where tgl_berobat Between ‘2011-04-01’ AND ‘2011-04-03’;
  • 31.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b)Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 32.
    Syntax Where UntukRelasi PENGGUNAAN TANDA TITIK (.) ● ● Jika ada nama field yang sama dari tabel yang disertakan, maka sebelum nama field, berikan nama tabel diikuti sebuah titik (.) Misal untuk query sebelumnya bisa juga ditulis sbb: SELECT Koleksi.idKoleksi, Koleksi.Judul, Pengarang.Nama FROM Koleksi, Pengarang WHERE Koleksi.idPengarang=Pengarang.idPengarang
  • 33.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 34.
    Alias ● Sebuah tabel bisadiberi nama lain (alias) : 1. Untuk membedakan field jika sebuah query mengambil tabel yang sama lebih dari satu 2. Untuk memperpendek pengetikan ● Nama alias ditulis setelah nama tabel yang bersangkutan
  • 35.
    Alias (Membedakan Field) Contoh: select proyek.nama, departemen.nama from proyek, departemen where proyek.id = departemen.id order by proyek.id select proyek.nama as nama_pro, departemen.nama as nama_dept from proyek, departemen where proyek.id = departemen.id order by proyek.id
  • 36.
    Alias (Memperpendek Pengetikan) Contoh: select proyek.nama, departemen.nama from proyek, departemen where proyek.id = departemen.id order by proyek.id select p.nama as nama_pro, d.nama as nama_dept from proyek p, departemen d where p.id = d.id order by p.id
  • 37.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 38.
    Pengurutan Data (OrderBy) ● ● Pencarian data akan jauh lebih mudah jika data yang tersedia telah diurutkan berdasarkan field tertentu. Misalnya untuk mencari data customer, akan lebih mudah mencari berdasarkan urutan nama. Select field 1, field 2,… field –n From tabel Order by field
  • 39.
    Pengurutan Data (OrderBy) 1. select * from customer 2. select nama, alamat from customer order by nama
  • 40.
    Pengurutan Data (OrderBy) 3. Pengurutan ASC dan DESC select nama, alamat from customer order by nama asc select nama, alamat from customer order by nama desc
  • 41.
    Pengurutan Data (OrderBy) 4. Pengurutan berdasarkan lebih dari satu atribut SELECT tahun, pengarang, judul_buku, penerbit FROM buku ORDER BY tahun, pengarang;
  • 42.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 43.
    Penggolongan Data (GroupBy) ● ● ● Pada kasus seleksi data sering kali menampilkan sekumpulan data berdasarkan kelompok data tertentu. Penting untuk diperhatikan, kolom yang disertakan setelah GROUP BY harus sama dengan kolom yang dipilih pada setelah klausa SELECT Biasanya untuk kasus pengelompokan data disertakan fungsi aggregate : min(), max(), avg, sum(), dan count()
  • 44.
    Penggolongan Data (GroupBy) Contoh : SELECT OrderID, Sum (Quantity) FROM Order_Detail GROUP BY OrderID SELECT OrderID, Min (UnitPrice), Max (UnitPrice) FROM Order_Detail GROUP BY OrderID
  • 45.
    Pengelompokan Data ● Operator ● SQL Syntax: Select (Lanjutan) ● SQL Syntax : Where (Lanjutan) a) Where untuk filter data b) Where untuk relasi ● Alias ● Order By ● Group By ● Having
  • 46.
    Kondisi Agregat (Having) Jikauntuk filter query biasa kita menggunakan klause where, maka klausa having digunakan untuk filter fungsi-fungsi aggregate. Contoh : untuk menampilkan jumlah buku per kode penerbit, tetapi hanya yang jumlahnya >10 saja yang ditampilkan. SELECT idPenerbit, COUNT(*) FROM koleksi GROUP BY idPenerbit HAVING COUNT(*)>10
  • 47.
    Syntax Tambahan MENAMPILKAN STRUKTURTABEL Untuk menampilkan struktur tabel digunakan DESCRIBE. Formatnya: DESCRIBE [namatabel] Contoh: DESCRIBE employees