Anda di halaman 1dari 31

Database Programming with

SQL
1-3
Anatomi Pernyataan SQL

Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang.
Tujuan
• Pelajaran ini akan membahas tujuan berikut:
−Mencocokkan proyeksi dan pemilihan dengan kemampuan
yang benar
−Membuat pernyataan SELECT
−Menggunakan sintaks yang benar untuk menampilkan semua
baris dalam tabel
−Menggunakan sintaks yang benar untuk memilih kolom
tertentu dalam tabel, mengubah
bagaimana data ditampilkan, dan
melakukan penghitungan
menggunakan ekspresi aritmetika
dan operator

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 3
Tujuan
• Pelajaran ini akan membahas tujuan berikut:
−Membuat formulasi kueri menggunakan precedence operator
yang tepat untuk menampilkan hasil yang diinginkan
−Menentukan nilai null
−Mendemonstrasikan nilai null efek dalam ekspresi aritmetika
−Membuat kueri menggunakan alias kolom

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 4
Kata kunci SELECT
• SELECT adalah salah satu kata kunci yang paling penting,
jika bukan demikian, maka yang paling penting di SQL
• Anda menggunakan SELECT untuk mengambil informasi
dari database. Ketika Anda mempelajari cara menggunakan
SELECT, Anda telah membuka pintu ke database
• Bayangkan database berisi informasi tentang film, seperti
judul, genre, studio, produser, tanggal rilis, serial, negara,
bahasa, penilaian, durasi, dan sebagainya
• Bagaimana jika Anda hanya menginginkan judul film yang
dibuat di India?
• Pernyataan SELECT memungkinkan Anda mencari data
tertentu

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 5
Pernyataan SELECT
• Pernyataan SELECT mengambil informasi dari database.
• Sintaks untuk pernyataan SELECT adalah sebagai
berikut:
SELECT <column_name(s)>
FROM <table_name>;

• Dalam bentuk yang paling sederhana, pernyataan


SELECT harus menyertakan hal berikut:
−Klausa SELECT, yang menentukan kolom akan ditampilkan
−Klausa FROM, yang menentukan tabel berisi kolom tercantum
dalam klausa SELECT

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 6
Konvensi
• Untuk kursus ini, hal berikut ini akan digunakan:
SELECT last_name
FROM employees
• Kata kunci yang merujuk ke perintah SQL individu
• Misalnya, kata kunci SELECT dan FROM
• Klausa adalah bagian dari pernyataan SQL
• Contoh, SELECT last_name adalah klausa
• Pernyataan adalah kombinasi dua klausa atau lebih
• Contoh, SELECT last_name FROM karyawan adalah
pernyataan

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 7
Kapabilitas Pernyataan SELECT
• Proyeksi:
−Digunakan untuk memilih kolom pada tabel
• Seleksi:
−Digunakan untuk memilih baris pada tabel
Tabel 2: Proyeksi Tabel 2: Seleksi

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 8
Proyeksi dan Seleksi

ID FIRST_NAME LAST_NAME SALARY


10 John Doe 4000
20 Jane Jones 3000
30 Sylvia Smith 5000
40 Hai Nguyen 6000

Proyeksi

SELECT salary
Seleksi FROM employees
WHERE last_name like
'Smith';

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 9
Memilih Semua Kolom
• Anda dapat menampilkan semua kolom data pada
tabel menggunakan simbol bintang (*) alih-alih nama
kolom pada klausa SELECT.
SELECT *
• Pada contoh yang FROM countries;
ditampilkan, semua
kolom di tabel COUNTRY_ID COUNTRY_NAME REGION_ID
negara dipilih.
CA Canada 2

DE Germany 1

UK United Kingdom 1

US United States of America 2

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 10
Memilih Semua Kolom
• Anda juga dapat menampilkan semua kolom pada
tabel dengan membuat daftar secara individu
SELECT country_id, country_name, region_id
FROM countries;

COUNTRY_ID COUNTRY_NAME REGION_ID

CA Canada 2

DE Germany 1

UK United Kingdom 1

US United States of America 2

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 11
Memproyeksikan Kolom Spesifik
• Jika Anda ingin hanya MEMPROYEKSIKAN kolom
tertentu dari tabel untuk ditampilkan, cukup buat
daftar setiap nama kolom yang Anda inginkan dan
pisahkan setiap nama dengan koma di klausa SELECT.
SELECT location_id, city, state_province
FROM locations;

LOCATION_ID CITY STATE_PROVINCE


1800 Toronto Ontario
2500 Oxford Oxford
1400 Southlake Texas
1500 South San Francisco California
1700 Seattle Washington

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 12
Menggunakan Operator Aritmetika
• Dengan menggunakan aturan dan panduan sederhana,
Anda dapat menyusun pernyataan SQL yang mudah
dibaca dan diedit
• Mengetahui aturan akan memudahkan dalam
mempelajari SQL
• Anda mungkin perlu mengubah cara suatu data
ditampilkan, melakukan kalkulasi, atau melihat
skenario what-if
• Misalnya, "Bagaimana jika setiap karyawan diberikan
kenaikan gaji 5%?
• Bagaimana hal itu dapat memengaruhi angka laba
tahunan kita?”
DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 13
Menggunakan Operator Aritmetika
• Tipe kalkulasi ini semuanya memungkinkan
menggunakan pernyataan aritmatika
• Anda telah familiar dengan pernyataan aritmatika di
matematika:
−tambah (+), kurang (-), kali (*) dan bagi (/)
• Perhatikan bahwa contoh ini tidak membuat kolom
baru dalam tabel atau mengubah nilai data
• Hasil dari kalkulasi akan muncul hanya pada output

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 14
Menggunakan Operator Aritmetika
• Contoh yang ditunjukkan LAST_NAME SALARY SALARY+300
menggunakan operator
tambahan untuk menghitung King 24000 24300

kenaikan gaji hingga 300 untuk Kochhar 17000 17300

semua karyawan dan De Haan 17000 17300


menampilkan kolom Whalen 4400 4700
SALARY + 300 pada hasil
SELECT last_name, salary, Higgins 12000 12300
salary + 300 Gietz 8300 8600
FROM employees;
Zlotkey 10500 10800
• Memberikan ruang kosong
sebelum dan setelah operator Abel 11000 11300

aritmatika tidak akan Taylor 8600 8900


memengaruhi output Grant 7000 7300

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 15
Precedence di Operator Aritmatika
• Precedence adalah urutan di mana Oracle
mengevaluasi operator berbeda dalam pernyataan
yang sama
• Ketika mengevaluasi pernyataan berisi beberapa
operator, Oracle mengevaluasi operator dengan
precedence lebih tinggi sebelum mengevaluasi
operator dengan precedence lebih rendah
• Oracle mengevaluasi operator dengan precedence
setara dari kiri ke kanan dalam sebuah pernyataan

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 16
Precedence di Operator Aritmatika
• Operator aritmatika mengerjakan operasi matematis
dari Perkalian, Pembagian, Penambahan, dan
Pengurangan
• Jika operator ini muncul bersamaan dalam sebuah
pernyataan, perkalian dan pembagian akan dievaluasi
terlebih dulu
• Sehingga, urutannya menjadi: * / + -
• Cara mudah untuk mengingat precedence operator
adalah dengan perangkat mnemonik: My Dear Aunt
Sally

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 17
Precedence di Operator Aritmatika
• Jika operator dalam sebuah pernyataan berada pada
precedence yang sama, maka evaluasi diselesaikan dari
kiri ke kanan
• Anda selalu dapat menggunakan tanda kurung untuk
menggunakan pernyataan dalam tanda kurung agar
dievaluasi terlebih dulu
• Pada tabel contoh yang ditampilkan pada slide
berikutnya, perhatikan perbedaan dalam output di
antara kueri yang menggunakan tanda kurung dan satu
yang tidak

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 18
Precedence di Operator Aritmatika
Pendahulu Operator Menggunakan Tanda Kurung
SELECT last_name, salary, SELECT last_name, salary,
12*salary +100 12*(salary +100)
FROM employees; FROM employees;

LAST_NAME SALARY 12*SALARY+100 LAST_NAME SALARY 12*(SALARY+100)


King 24000 288100 King 24000 289200
Kochhar 17000 204100 Kochhar 17000 205200
De Haan 17000 204100 De Haan 17000 205200
Whalen 4400 52900 Whalen 4400 54000
Higgins 12000 144100 Higgins 12000 145200
Gietz 8300 99700 Gietz 8300 100800

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 19
Nilai NULL
• Pada SQL, NULL merupakan kata yang menarik
• Untuk memahami NULL, Anda harus mengetahui
apakah NULL itu dan apa yang bukan NULL
• NULL adalah nilai yang tidak tersedia, tidak ditetapkan,
tidak diketahui, atau tidak berlaku
• NULL tidak sama dengan nol atau spasi kosong
• Di SQL, nol adalah angka, dan spasi adalah karakter

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 20
Nilai NULL
• Kadang, Anda tidak mengetahui nilai untuk kolom
• Di database, Anda dapat menyimpan nilai yang tidak
diketahui di database
• Database relasional menggunakan placeholder yang
disebut NULL atau null untuk mewakili nilai yang tidak
diketahui ini

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 21
Nilai NULL
• Jika semua nilai kolom Gaji dan Komisi
dalam pernyataan LAST_NAME JOB_ID SALARY COMMISSION_PCT
aritmatika adalah null,
King AD_PRES 24000 -
hasilnya akan null atau
tidak diketahui Kochhar AD_VP 17000 -

De Haan AD_VP 17000 -


• Jika Anda mencoba
membagi dengan null, Whalen AD_ASST 4400 -

hasilnya akan null atau Higgins AC_MGR 12000 -

tidak diketahui Gietz AC_ACCOUNT 8300 -

• Namun, jika Anda mencoba Zlotkey SA_MAN 10500 .2

untuk membagi dengan Abel SA_REP 11000 .3


nol, Anda akan
mendapatkan kesalahan

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 22
Nilai NULL
SELECT last_name, job_id, salary, commission_pct,
salary*commission_pct
FROM employees;

Gaji dan Komisi


LAST_NAME JOB_ID SALARY COMMISSION_PCT SALARY*COMMISSION_PCT
King AD_PRES 24000 - -
Kochhar AD_VP 17000 - -
De Haan AD_VP 17000 - -
Whalen AD_ASST 4400 - -
Higgins AC_MGR 12000 - -
Gietz AC_ACCOUNT 8300 - -
Zlotkey SA_MAN 10500 .2 2100
Abel SA_REP 11000 .3 3300
Taylor SA_REP 8600 .2 1720

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 23
Alias
• Alias merupakan cara untuk mengganti nama judul
kolom pada output
• Tanpa alias, ketika hasil pernyataan SQL ditampilkan,
nama kolom yang ditampilkan akan sama seperti nama
kolom pada tabel atau nama menampilkan operasi
aritmatika seperti 12*(SALARY + 100)
• Anda mungkin ingin output menampilkan nama yang
lebih mudah dipahami, dan nama yang lebih “ramah”
• Alias kolom memungkinkan Anda mengganti nama
kolom pada output

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 24
Alias
• Terdapat beberapa aturan saat menggunakan alias
kolom untuk memformat output
• Alias kolom:
−Mengganti nama judul kolom
−Berguna dengan penghitungan
−Langsung ikuti nama kolom
−Memiliki kata kunci AS opsional antara nama kolom dan alias
−Memerlukan tanda kutip ganda jika alias berisi spasi atau
karakter khusus, atau jika peka huruf besar/kecil.

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 25
Menggunakan Alias Kolom
• Sintaks untuk alias
adalah:
SELECT * |column|expr [ AS alias], .....
FROM table;

• Contoh:
SELECT last_name AS name, NAME COMM
commission_pct AS comm King -
FROM employees; Kochhar -
De Haan -

SELECT last_name "Name", Name Annual Salary


salary*12 "Annual Salary" King 288000
FROM employees; Kochhar 204000
De Haan 204000

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 26
Terminologi
• Istilah-istilah penting yang digunakan dalam pelajaran
ini di antaranya:
−Pernyataan Aritmatika
−Operator aritmetika
−Klausa
−Kolom
−Alias kolom
−Klausa From
−NULL

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 27
Terminologi
• Istilah-istilah penting yang digunakan dalam pelajaran
ini di antaranya:
−Proyeksi
−Klausa Select
−Seleksi
−Pernyataan Select
−Pernyataan
−Klausa WHERE
− * (Tanda Bintang)

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 28
Rangkuman
• Dalam pelajaran ini, Anda seharusnya telah
mempelajari cara:
−Mencocokkan proyeksi dan pemilihan dengan kemampuan
yang benar
−Membuat pernyataan SELECT
−Menggunakan sintaks yang benar untuk menampilkan semua
baris dalam tabel
−Menggunakan sintaks yang benar untuk memilih kolom
tertentu dalam tabel, mengubah bagaimana data
ditampilkan, dan melakukan penghitungan menggunakan
ekspresi aritmetika dan operator

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 29
Rangkuman
• Dalam pelajaran ini, Anda seharusnya telah
mempelajari cara:
−Membuat formulasi kueri menggunakan precedence operator
yang tepat untuk menampilkan hasil yang diinginkan
−Menentukan nilai null
−Menunjukkan pengaruh nilai null yang dibuat dalam
pernyataan aritmatika
−Membuat kueri menggunakan
alias kolom

DP 1-3
Anatomi Pernyataan SQL Hak cipta © 2020, Oracle dan/atau afiliasinya. Semua hak dilindungi undang-undang. 30

Anda mungkin juga menyukai