Memfilter dan mengurutkan

Pengambilan Keputusan Berbasis Data dengan SQL

Tim Verdonck

Professor Statistics and Data Science

WHERE

Pilih semua pelanggan dari Italy:

SELECT *
FROM customers
WHERE country = 'Italy';
|customer_id | name              | country | gender | date_of_birth | date_account_start|
|------------|-------------------|---------|--------|---------------|-------------------|
| 53         | Teresio Panicucci | Italy   | male   | 1999-07-21    | 2018-11-06        |
| 54         | Demetrio Palermo  | Italy   | male   | 1997-10-10    | 2018-10-17        |
| 55         | Facino Milano     | Italy   | male   | 1973-05-23    | 2018-01-02        |
Pengambilan Keputusan Berbasis Data dengan SQL

Operator di klausa WHERE

  • Operator perbandingan:
    • Sama dengan =
    • Tidak sama dengan <>
    • Kurang dari <
    • Kurang dari atau sama dengan <=
    • Lebih dari >
    • Lebih dari atau sama dengan >=
  • Operator BETWEEN
  • Operator IN
  • Operator IS NULL dan IS NOT NULL
Pengambilan Keputusan Berbasis Data dengan SQL

Contoh operator perbandingan

Pilih semua kolom dari movies dengan genre bukan Drama.

SELECT *
FROM movies
WHERE genre <> 'Drama';

Pilih semua kolom dari movies dengan harga sewa >= 2.

SELECT *
FROM movies
WHERE renting_price >= 2;
Pengambilan Keputusan Berbasis Data dengan SQL

Contoh: operator BETWEEN

Pilih semua kolom customers dengan tanggal pembuatan akun antara 2018-01-01 dan 2018-09-30.

SELECT *
FROM customers
WHERE date_account_start BETWEEN '2018-01-01' AND '2018-09-30';
Pengambilan Keputusan Berbasis Data dengan SQL

Contoh: operator IN

Pilih semua aktor dengan kewarganegaraan USA atau Australia.

SELECT *
FROM actors
WHERE nationality IN ('USA', 'Australia')
Pengambilan Keputusan Berbasis Data dengan SQL

Contoh: operator NULL

Pilih semua kolom dari renting dengan rating bernilai NULL.

SELECT *
FROM renting
WHERE rating IS NULL

Pilih semua kolom dari renting dengan rating bukan NULL.

SELECT *
FROM renting
WHERE rating IS NOT NULL
Pengambilan Keputusan Berbasis Data dengan SQL

Operator boolean AND

Pilih nama pelanggan dan tanggal pembuatan akun untuk pelanggan dari Italy DAN yang membuat akun antara 2018-01-01 dan 2018-09-30.


SELECT name, date_account_start
FROM customers
WHERE country = 'Italy'
AND date_account_start BETWEEN '2018-01-01' AND '2018-09-30';

| name | date_account_start | |--------------------|--------------------| | Facino Milano | 2018-01-02 | | Mario Lettiere | 2018-01-30 | | Rocco Buccho | 2018-02-27 | | Cristoforo Mancini | 2018-01-12 |
Pengambilan Keputusan Berbasis Data dengan SQL

Operator boolean OR

Pilih nama pelanggan dan tanggal pembuatan akun untuk pelanggan dari Italy ATAU yang membuat akun antara 2018-01-01 dan 2018-09-30.

SELECT name, date_account_start
FROM customers
WHERE country = 'Italy'
OR date_account_start BETWEEN '2018-01-01' AND '2018-09-30';
| name                  | country | date_account_start |
|-----------------------|-------- |--------------------|
| Rowanne Couperus      | Belgium | 2018-08-26         |
| Annelous Sneep        | Belgium | 2018-05-12         |
| Jaëla van den Dolder  | Belgium | 2018-02-08         |
| ...                   | ...     | ...                |
Pengambilan Keputusan Berbasis Data dengan SQL

ORDER BY

Urutkan hasil kueri berdasarkan rating.

SELECT *
FROM renting
WHERE rating IS NOT NULL
ORDER BY rating;
| renting_id | customer_id | movie_id | rating | date_renting |
|------------|-------------|----------|--------|--------------|
| 552        | 28          | 56       | 1      | 2017-03-27   |
| 558        | 41          | 19       | 3      | 2019-01-13   |
| 444        | 120         | 59       | 3      | 2018-08-10   |
| 200        | 86          | 46       | 3      | 2018-08-26   |
| 234        | 104         | 28       | 4      | 2018-10-04   |
Pengambilan Keputusan Berbasis Data dengan SQL

ORDER BY ... DESC

Urutkan hasil kueri berdasarkan rating secara menurun.

SELECT *
FROM renting
WHERE rating IS NOT NULL
ORDER BY rating DESC;
| renting_id | customer_id | movie_id | rating | date_renting |
|------------|-------------|----------|--------|--------------|
| 243        | 7           | 5        | 10     | 2019-01-11   |
| 18         | 36          | 39       | 10     | 2019-03-20   |
| 396        | 7           | 40       | 10     | 2018-09-11   |
| 487        | 61          | 48       | 10     | 2017-08-14   |
| 476        | 78          | 42       | 10     | 2018-07-04   |
Pengambilan Keputusan Berbasis Data dengan SQL

Ayo berlatih!

Pengambilan Keputusan Berbasis Data dengan SQL

Preparing Video For Download...