SlideShare a Scribd company logo
Oracle SQL & PL/SQL – 2. Menampilkan Data
Kali ini kita akan mempelajari bagaimana menampilkan data dengan menggunakan perintah-
perintah SQL. Seperti telah kita pelajari pada pembahasan sebelumnya yaitu Oracle SQL &
PL/SQL – 1. Pendahuluan, perintah yang digunakan untuk menampilkan data adalah
SELECT.
2.1. Sintaks Dasar
Perintah SELECT pada Oracle SQL minimal harus terdiri dari SELECT dan FROM.
SELECT [DISTINCT] {*, column [alias], …}
FROM table;
SELECT : Menampilkan paling tidak satu kolom
DISTINCT : Menghilangkan nilai duplikat
* : Menampilkan semua kolom
column: Menampilkan kolom tertentu
alias: Memberikan judul lain kolom
FROM table: Menunjukkan nama tabel asal
Penulisan Perintah SQL
 Perintah-perintah SQL dapat ditulis dalam satu baris atau lebih, namun untuk
kemudahan sebaiknya setiap klausa ditulis dalam baris yang berbeda
 Perintah-perintah SQL tidak case-sensitive
 Gunakan perintah ED untuk mengedit perintah-perintah SQL
SQL> ED;
2.1.1. Menampilkan Seluruh Kolom dan Baris
Menampilkan seluruh kolom dari suatu tabel dapat dilakukan dengan dua cara, yaitu:
 Menyebutkan seluruh nama kolom
SELECT id, name, region_id
FROM department;
 Menggunakan tanda bintang (*)
SELECT *
FROM department;
2.1.2. Menampilkan Kolom Tertentu
Menampilkan kolom tertentu dapat dilakukan dengan cara menyebutkan nama kolom yang
ingin ditampilkan datanya. Contoh berikut ini menunjukkan bagaimana cara menampilkan
kolom tertentu dari tabel Department.
SELECT name
FROM department;
2.2. Operasi Aritmatika
Perhitungan dapat dilakukan pada perintah SQL dengan menggunakan ekspresi aritmatika,
yang dapat mengandung nama-nama kolom, nilai-nilai numerik yang teta, dan operator-
operator aritmatika.
+ : Penjumlahan
– : Penguranan
* : Perkalian
/ : Pembagian
 Operator perkalian dan pembagian memiliki prioritas di atas penjumlahan dan
pengurangan
 Operator dengan prioritas yang sama di evaluasi dari kiri ke kanan
 Tanda kurung dapat digunakan untuk memaksa prioritas evaluasi dan memperjelas
perintah
Contoh:
 Menampilkan nama belakang dan menghitung gaji tahunan karyawan
SELECT last_name, salary*12
FROM employee;
 Menampilkan nama belakang, gaji bulanan, dan gaji tahunan karyawan. Gaji tahunan
merupakan gaji bulanan di kali dengan 12, ditambah dengan bonus 1.000.000
SELECT last_name, salary, salary*12+1000000
FROM salary;
 Menampilkan nama belakang, gaji bulanan, dan gaji tahunan karyawan. Gaji tahunan
merupakan gaji bulanan ditambah dengan bonus 1.000.000, di kali dengan 12
SELECT last_name, salary, 12*(salary+1000000)
FROM employee;
2.3. Alias Kolom
SQL*Plus menggunakan nama kolom sebagai judul dalam menampilkan hasil query. Padahal
terkadang nama kolom sulit di mengerti atau bahkan tidak memiliki arti. Kita dapat
mengubah tampilan judul kolom menggunakan alias (nama lain).
Contoh
Menampilkan nama belakang, gaji bulanan, dan gaji tahunan karyawan. Gaji tahunan
merupakan gaji bulanan di tambah dengan bonus 1.000.000, di kali dengan 12 dan di
tampilkan dengan judul GAJI_TAHUNAN.
SELECT last_name, salary, 12*(salary+1000000) AS GAJI_TAHUNAN
FROM employee;
Kita boleh menggunakan AS sebelum alias kolom untuk memenuhi standar ANSI SQL 92.
2.3.1. Alias Kolom dengan Tanda Petik Dua
Jika alias kolom mengandung spasi, karakter khusus seperti # atau $, atau case-sensitive
(membedakan huruf besar dan kecil), gunakan tanda petik dua pada alias kolom tersebut.
Contoh
Memodifikasi query sebelumnya, gaji tahunan ditampilkan dengan judul Gaji Tahunan.
SELECT last_name, salary, 12*(salary+1000000) AS “Gaji Tahunan”
FROM employee;
2.4. Operator Penggabungan
Kita dapat menggabungkan satu kolom dengan lainnya, ekspresi aritmatika, atau nilai tetap
untuk menciptakan ekspresi karakter menggunakan operator penggabungan (||). Kolom-
kolom pada setiap sisi dari operator di kombinasikan untuk menghasilkan satu output kolom
tunggal.
Contoh:
Menampilkan nama lengkap karyawan dengan judul Karyawan.
SELECT first_name||last_name AS “Karyawan”
FROM employee;
Menampilkan nama lengkap dan jabatan karyawan dengan judul Karyawan. Dalam contoh ini
antara nama depan dan nama belakang di pisahkan spasi, dan antara nama lengkap dan
jabatan di pisahkan koma.
SELECT first_name||’ ‘||last_name||’, ‘||title AS “Karyawan”
FROM employee;
2.5. Manajemen Nilai Null
Null adalah nilai yang tidak tersedia, tidak diberikan, tidak diketahui, atau tidak dapat
digunakan. Null tidak sama dengan nol atau spasi. Nol adalah angka, dan spasi adalah
karakter. Kolom dapat mengandung nilai null, kecuali kolom yang telah didefinisikan sebagai
NOT NULL atau PRIMARY KEY ketika tabel diciptakan.
2.5.1. Nilai Null dalam Ekspresi Aritmatika
Jika nilai kolom dalam sebuah ekspresi adalah null, maka hasilnya juga null. Sebagai contoh,
jika kita berusaha melakukan pembagian terhadap nol, maka akan terjadi kesalahan. Namun
jika kita membagi terhadap null, maka hasilnya adalah null.
Contoh
Menampilkan nama belakang, gaji, jabatan, dan hasil perhitungan komisi.
SELECT last_name, title, salary, salary*commission_pct/100 KOMISI
FROM employee;
2.5.2. Fungsi NVL
Fungsi NVL digunakan untuk mengkonversi nilai null menjadi nilai yang kita kehendaki.
Sintaks fungsi NVL adalah sebagai berikut:
NVL (expr1, expr2)
expr1: nilai sumber atau ekspresi yang mungkin bernilai null
expr2: nilai target hasil konversi null
Kita dapat menggunakan fungsi NVL untuk mengkonversi tipe data apapun, namun hasilnya
akan selalu sama dengan tipe data dari expr1.
Tipe data dan contoh konversi:
 NUMBER
o NVL (kolom_angka,9)
 DATE
o NVL (kolom_tanggal,’01-JAN-99′)
 CHAR dan VARCHAR2
o NVL (kolom_karakter,’Tidak tersedia’)
Contoh:
Berikut ini adalah modifikasi dari query sebelumnya, namun nilai null yang mungkin
dihasilkan oleh prosentase komisi dalam hasil perhitungan komisi dikonversi menjadi nol.
SELECT last_name, title, salary, salary*NVL(commission_pct,0)/100 KOMISI
FROM employee;
2.6. MencegahTampilnya Nilai Duplikat
Tampilan default dari query adalah seluruh baris termasuk baris-baris duplikat (dobel).
Contoh:
Menampilkan seluruh nama departemen dari tabel DEPARTMENT.
SELECT name
FROM department;
2.6.1. Penggunaan Keyword DISTINCT
Baris-baris duplikat hasil query dapat dikurangi dengan menggunakan keyword DISTINCT
dan SELECT.
Contoh:
Menampilkan nama departemen secara unik (tidak ada nilai duplikat).
SELECT DISTINCT name
FROM department;
Menampilkan kombinasi-kombinasi berbeda dari jabatan dan kode departemen.
SELECT DISTINCT title, dept_id
FROM employee;
2.7. Menampilkan Struktur Tabel
Dalam SQL*Plus kita dapat menampilkan struktur dari suatu tabel dengan menggunakan
perintah DESCRIBE. Perintah ini menghasilkan nama kolom, tipe data, dan kolom mana
yang harus berisi data (NOT NULL).
DESC[RIBE] tablename
tablename: nama dari tabel, view atau synonym yang boleh diakses user
Contoh:
Menampilkan struktur tabel DEPARTMENT.
DESCRIBE department;
atau
DESC department;
Name: nama kolom
Null?: menunjukkan apakah suatu kolom harus berisi data
Type: tipe data dari kolom
2.7.1. Tipe Data
 NUMBER(p,s)
Digit maksimum p dan s angka dibelakang koma
 VARCHAR2(s)
 Tipe data karakter dengan panjang bervariasi (maksimum 2000)
 CHAR(s)
Tipe data karakter dengan panjang tetap
 DATE
Tipe data tanggal antara 1 Januari 4217 BC dan 4712 AD
2.8. Menciptakan Laporan
Kita dapat mengontrol format tampilan dari laporan menggunakan perintah COLUMN. Kita
dapat mengubah judul, lebar, dan format kolom.
COL [ UMN ] [{ column | alias } [ option . . . ]]
2.8.1. Pilihan-pilihan Perintah COLUMN
 CLE[AR]
 FOR[MAT] format
 HEA[DING] text
 JUS[TIFY] {align}
 NUL[L] text
 PRI[NT]
 TRU[NCATED]
 WRA[PPED]
 WOR[D_WRAPPED]
2.8.2. Menciptakan judul-judul kolom
COLUMN last_name HEADING ‘Nama|Karyawan’ FORMAT A15
COLUMN salary JUSTIFY LEFT FORMAT $99,990.00
COLUMN hire_date FORMAT A9 NULL ‘Tidak digaji’
Menampilkan setting terbaru kolom LAST_NAME
COLUMN last_name
Membersihkan setting kolom LAST_NAME
COLUMN last_name CLEAR
2.8.3. Menampilkan atau Membersihkan Setting
 COL[UMN] column
Menampilkan setting terkini dari kolom tertentu
 COL[UMN]
Menampilkan setting terkini dari seluruh kolom
 COL[UMN] column CLE[AR]
Membersihkan setting dari kolom tertentu
 CLE[AR] COL[UMN]
Membersihkan setting dari seluruh kolom
2.8.4. Model-model Format COLUMN
 An
Mengatur lebar tampilan dari kolom-kolom karakter atau tanggal
 9
Posisi numerik (jumlah angka 9 menunjukkan maksimal panjang data yang dapat
ditampilkan)
Contoh: 999999
Hasil: 1234
 0
Menambahkan awalan 0
Contoh: 099999
Hasil: 01234
 $
Menambahkan awalan $
Contoh: $9999
Hasil: $1234
 L
Menambahkan simbol local currency
Contoh: L9999
Hasil: L1234
 .
Menambahkan posisi decimal point
Contoh: 9999.99
Hasil: 1234.00
 ,
Menambahkan pemisah ribuan
Contoh: 9,999
Hasil: 1,234
2.9. Mengurutkan Data
Kita dapat menampilkan data secara urut berdasarkan satu atau beberapa kolom dengan
menambahkan klausa ORDER BY pada perintah SELECT yang telah kita pelajari
sebelumnya.
SELECT [DISTINCT] {*, column [alias], . . .}
FROM table
[ORDER BY {column, expr} [ASC|DESC]];
ORDER BY: menentukan dasar urutan data yang akan ditampilkan
ASC: menampilkan data secara urut menaik (ascending). Ini merupakan default pengurutan
data
DESC: menampilkan data secara urut menurun (descending)
2.9.1. Default Pengurutan Data
Apabila kita tidak menuliskan klausa ASC atau DESC dalam klausa ORDER BY, maka
proses pengurutan dilakukan secara ascending (default). Berikut ini hal-hal yang perlu
diketahui mengenai pengurutan data.
 Nilai-nilai numerik ditampilkan dengan nilai terkecil terlebih dahulu, contoh 1-999
 Nilai-nilai tanggal ditampilkan dengan nilai paling awal terlebih dahulu, contoh 01-
JAN-92 sebelum 01-JAN-95
 Nilai-nilai karakter ditampilkan secara alphabet, contoh A pertama dan Z terakhir
 Nilai-nilai null ditampilkan terakhir dalam urutan ascending dan pertama dalam
urutan descending
Contoh:
Menampilkan data karyawan urut berdasarkan nama belakang.
SELECT last_name, dept_id, hire_date
FROM employee
ORDER BY last_name;
Contoh diatas dapat dimodifikasi sehingga urut berdasarkan nama belakang secara menurun
(descending) dengan menambahkan klausa DESC.
SELECT last_name, dept_id, hire_date
FROM employee
ORDER BY last_name DESC;
2.9.2. Mengurutkan Data Menggunakan Alias Kolom
Kita dapat menggunakan alias kolom dalam klausa ORDER BY. Fitur ini tersedia sejak
Oracle 7 Release 7.0.16.
Contoh
Menampilkan data karyawan urut berdasarkan nama belakang.
SELECT last_name EMPLOYEE, hire_date
FROM employee
ORDER BY EMPLOYEE DESC;
2.9.3. Mengurutkan Data Berdasarkan Posisi Kolom
Metode lain untuk mengurutkan data adalah berdasarkan posisi kolom. Hal ini khususnya
berguna jika mengurutkan berdasarkan ekspresi yang panjang. Daripada harus mengetikkan
ekspresi yang panjang, kita dapat menentukan posisi kolom dalam SELECT.
Contoh:
Menampilkan data karyawan urut berdasarkan gaji tahunan.
SELECT last_name, salary*12
FROM employee
ORDER BY 2;
2.9.4. Mengurutkan Data Berdasarkan Beberapa Kolom
Kita dapat mengurutkan hasil query berdasarkan beberapa kolom. Batasannya adalah jumlah
kolom dalam tabel.
Contoh
Menampilkan data karyawan urut secara menaik (ascending) berdasarkan kode departemen,
kemudian urut secara menurun (descending) berdasarkan gaji.
SELECT last_name, salary
FROM employee
ORDER BY dept_id, gaji DESC;
2.10. Latihan
Tampilkan seluruh tabel yang Anda miliki.
SELECT table_name
FROM user_tables;
Tampilkan struktur tabel DEPARTMENT.
DESCRIBE department;
Tampilkan semua data tabel DEPARTMENT.
SELECT *
FROM department;
Tampilkan nama belakang pegawai, kode departemen dimana pegawai tersebut bekerja, dan
kode atasan pegawai tersebut.
SELECT last_name, dept_id, manager_id
FROM employee;
Tampilkan nama belakang, gaji tahunan dan prosentase komisi yang diterima oleh masing-
masing pegawai.
SELECT last_name, salary*12, commission_pct
FROM employee;
Tampilkan nama belakang, gaji bulanan dan kompensasi tahunan pegawai. Hitunglah
kompensasi tahunan dengan mengalikan gaji bulanan dengan 12, ditambah dengan bonus
sebesar $100.
SELECT last_name, salary, 12*salary+100
FROM employee;
Tampilkan nama belakang, gaji bulanan dan kompensasi tahunan pegawai. Hitunglah
kompensasi tahunan dengan menambahkan gaji bulanan dengan $100, kemudian dikalikan
dengan 12.
SELECT last_name, salary, 12*(salary+100)
FROM employee;
Tampilkan kembali perintah diatas, namun khusus untuk kompensasi tahunan pegawai, ganti
judul kolom dengan ANNUAL_SALARY.
SELECT last_name, salary, 12 * (salary + 100) AS ANNUAL_SALARY
FROM employee;
Tampilkan sekali lagi perintah diatas, namun khusus untuk kompensasi tahunan pegawai,
ganti judul kolom dengan Annual Salary.
SELECT last_name, salary, 12 * (salary + 100) AS “Annual Salary”
FROM employee;
Tampilkan nama lengkap pegawai dengan judul Employees.
SELECT first_name | | last_name AS “Employees”
FROM employee;
Tampilkan nama lengkap dan jabatan pegawai dengan judul Employees. Diantara nama
depan dan nama belakang pisahkan dengan spasi, dan diantara nama belakang dengan jabatan
pisahkan dengan koma.
SELECT first_name | | ‘ ‘ | | last_name | | ‘, ‘ | | title “Employees”
FROM employee;
Tampilkan nama belakang, jabatan dan komisi bulanan pegawai. Hitung komisi pegawai
dengan mengalikan gaji bulanan dengan prosentase komisi, kemudian beri judul COMM.
SELECT last_name, title, salary * commission_pct / 100 COMM
FROM employee;
Tampilkan kembali soal diatas, dengan ketentuan bahwa data komisi bulanan pegawai yang
tadinya kosong (tidak ada nilainya) dirubah menjadi angka 0.
SELECT last_name, title, salary * NVL(commission_pct,0) / 100 COMM
FROM employee;
Tampilkan nama departemen dari tabel S_DEPT. Perhatikan bahwa terdapat beberapa data
yang memiliki nilai sama.
SELECT name
FROM department;
Tampilkan kembali soal diatas dengan ketentuan data yang memiliki nilai sama cukup
ditampilkan cukup satu kali saja.
SELECT DISTINCT name
FROM department;
Tampilkan kombinasi yang berbeda antara jabatan pegawai dan kode departemen dimana
pegawai tersebut bekerja.
SELECT DISTINCT title, dept_id
FROM department;
Tampilkan nama belakang, gaji bulanan dan keterangan pegawai. Perhatikan bentuk
tampilannya.
SELECT last_name, salary, comments
FROM employee;
Tampilkan kembali nama belakang , gaji bulanan dan keterangan pegawai. Judul untuk nama
belakang adalah Employee Name, dengan ketentuan bahwa judul tersebut terdiri dari dua
baris, baris pertama Employee dan baris kedua Name dengan panjang data maksimal 15
karakter. Sedangkan gaji bulanan pegawai memiliki format $99,999.00. Untuk keterangan
yang kosong diganti dengan ‘No comment’ dengan panjang data maksimal 15 karakter.
COLUMN last_name HEADING ‘Employee|Name’ FORMAT A15
COLUMN salary FORMAT $99,999.00
COLUMN comments FORMAT A15 NULL ‘No comment’
SELECT last_name, salary, comments
FROM employee;
Tampilkan kembali soal diatas, dengan ketentuan data ditampilkan dengan format asli seperti
sebelum diberikan perintah format column.
COLUMN last_name CLEAR;
COLUMN salary CLEAR;
COLUMN comments CLEAR;
SELECT last_name, salary, comments
FROM employee;

More Related Content

DOC
Bab 6. SQL
PDF
T modul 5 mysql
PDF
PPT
SQL Data Definition
DOCX
Mengenal operasi dasar sql
PDF
Structure query language
PPTX
Fungsi dan formula
PPT
Data definition language
Bab 6. SQL
T modul 5 mysql
SQL Data Definition
Mengenal operasi dasar sql
Structure query language
Fungsi dan formula
Data definition language

What's hot (13)

DOC
Materi sql server 3 eresha
PPTX
Structured query language
DOCX
PPT
slide praktikum basis data
PPTX
Sql session 1
PPT
PPTX
Penggunaan SUBQUERY SQL SERVER (USING SUBQUERIES)
PPTX
Data definition language (ddl)
DOCX
015 function
DOCX
Agus purnama (c1357201102)
PDF
Praktikum 1
PPT
Formula dan fungsi
Materi sql server 3 eresha
Structured query language
slide praktikum basis data
Sql session 1
Penggunaan SUBQUERY SQL SERVER (USING SUBQUERIES)
Data definition language (ddl)
015 function
Agus purnama (c1357201102)
Praktikum 1
Formula dan fungsi
Ad

Viewers also liked (20)

PPTX
Presentación1 proyecto 3
PDF
Regimento eleitoral para coordenação do dce revisado
PPTX
La contaminacion por vinicio
PPTX
La contaminaciòn pedroalvarez
PPTX
CONTAMINACION DEL MEDIO AMBIENTE
PPSX
La Contaminación Ambiental
PPTX
CONTAMINACIÓN DEL MEDIO AMBIENTE
PPTX
36 rehabilitando un espacio para nuestra educación
PDF
Que aportas tu para la conservacion del planeta
PPTX
Copia contaminacion ambiental
PPTX
CONTAMINACION AMBIENTAL
PPT
Tipos de contaminación
PPT
Contaminacion Ambiental y Mineria
PPTX
La contaminación y principales tipos de contaminación.
PPTX
Diapositivas contaminacion ambiental! 01
PPT
La Contaminacion Ambiental
PPTX
cuidado y conservacion del medio ambiente
PPT
Diapositiva Contaminacion Ambiental
PPTX
Que Es La Contaminacion Ambiental
Presentación1 proyecto 3
Regimento eleitoral para coordenação do dce revisado
La contaminacion por vinicio
La contaminaciòn pedroalvarez
CONTAMINACION DEL MEDIO AMBIENTE
La Contaminación Ambiental
CONTAMINACIÓN DEL MEDIO AMBIENTE
36 rehabilitando un espacio para nuestra educación
Que aportas tu para la conservacion del planeta
Copia contaminacion ambiental
CONTAMINACION AMBIENTAL
Tipos de contaminación
Contaminacion Ambiental y Mineria
La contaminación y principales tipos de contaminación.
Diapositivas contaminacion ambiental! 01
La Contaminacion Ambiental
cuidado y conservacion del medio ambiente
Diapositiva Contaminacion Ambiental
Que Es La Contaminacion Ambiental
Ad

Similar to Oracle sql (20)

DOCX
Laporan praktikum modul 8 (dml part 2)
PPTX
Basis Data Kelas XI _ Materi SQL Rekayasa Perangkat Lunak
PPT
matrei perkuliahana tentang SQL Overview.ppt
PPTX
SQL (Structured query language).pptx
PPT
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
PDF
SQL.pdf
DOC
Pertemuan11
PDF
LPR Week 2-KEMASTURA Group-2023-Data Analytics
PDF
Tutorial membuat form dalam netbeans
PDF
7 Materi Kuliah Bahasa SQL
PDF
Praktikum Pertama SQL Structure Query Language
PPTX
Strategi dan Implementasi Basis Data: Memahami Konsep, Struktur, dan Teknologi
PDF
PERTEMUAN 10 database.............................
PPT
Pengantar SQL
DOC
Lapres 7 1235010002
PPT
Dasar_Dasar_Perintah_SQL.ppt
PDF
Modul my sql tutorial part 5
PPT
dasar dasar perintah sql\Dasar_Dasar_Perintah_SQL.ppt
PDF
Tutorial membuat form dalam netbeans versi2
PDF
Bahasa Query Terapan
Laporan praktikum modul 8 (dml part 2)
Basis Data Kelas XI _ Materi SQL Rekayasa Perangkat Lunak
matrei perkuliahana tentang SQL Overview.ppt
SQL (Structured query language).pptx
file_2013-09-24_11_21_37_WIBOWO_WICAKSONO,_ST.,M.Kom__5._SQL2.ppt
SQL.pdf
Pertemuan11
LPR Week 2-KEMASTURA Group-2023-Data Analytics
Tutorial membuat form dalam netbeans
7 Materi Kuliah Bahasa SQL
Praktikum Pertama SQL Structure Query Language
Strategi dan Implementasi Basis Data: Memahami Konsep, Struktur, dan Teknologi
PERTEMUAN 10 database.............................
Pengantar SQL
Lapres 7 1235010002
Dasar_Dasar_Perintah_SQL.ppt
Modul my sql tutorial part 5
dasar dasar perintah sql\Dasar_Dasar_Perintah_SQL.ppt
Tutorial membuat form dalam netbeans versi2
Bahasa Query Terapan

Recently uploaded (20)

PPTX
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
DOCX
Modul Ajar Deep Learning PAI & BP Kelas 12 SMA Terbaru 2025
PPTX
MATERI NARKOBA RTS badan anti narkoba.pptx
DOCX
Modul Ajar Deep Learning PJOK Kelas 12 SMA Terbaru 2025
PDF
ANALISIS CP NO 046 TAHUN 2025 FASE C.pdf
DOCX
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
PPTX
2. Modul 2 Fase C Berpikir Komputasional.pptx
DOCX
Modul Ajar Deep Learning PJOK Kelas 10 SMA Terbaru 2025
PPT
Teknologi-Pangan-Pertemuan-820728132309-.ppt
PDF
3. Buku Sekolah Sehat, sekolah sehat bagi madrasah
PPTX
PPT Kurikulum Berbasis Cinta tahun 2025.
PPSX
Teknik Trading Selang Seling Yang Dapat Digunakan Untuk Trading Manual Maupun...
PPTX
Bahan Tayang OJT Pembelajaran Mendalam KS
PDF
lembar kerja LMS tugas pembelajaran mendalam
PPTX
Bahan Presentasi Persamaan Elips .pptx
DOCX
Modul Ajar Deep Learning PAI & BP Kelas 11 SMA Terbaru 2025
PPT
SEJARAH kelas 12 SEMESTER SATU DAN DUA.ppt
DOCX
LKPD_Bab_1_Informatika_Kelas_9. : Informatika dan Keterampilan Generikdocx
PPTX
ppt kelas XII materi sifat koligatif larutan
PPTX
Model Lintas minat dan pendalaman materi
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
Modul Ajar Deep Learning PAI & BP Kelas 12 SMA Terbaru 2025
MATERI NARKOBA RTS badan anti narkoba.pptx
Modul Ajar Deep Learning PJOK Kelas 12 SMA Terbaru 2025
ANALISIS CP NO 046 TAHUN 2025 FASE C.pdf
CONTOH RANCANGAN MODUL PROYEK KOKURIKULER SMA 1.docx
2. Modul 2 Fase C Berpikir Komputasional.pptx
Modul Ajar Deep Learning PJOK Kelas 10 SMA Terbaru 2025
Teknologi-Pangan-Pertemuan-820728132309-.ppt
3. Buku Sekolah Sehat, sekolah sehat bagi madrasah
PPT Kurikulum Berbasis Cinta tahun 2025.
Teknik Trading Selang Seling Yang Dapat Digunakan Untuk Trading Manual Maupun...
Bahan Tayang OJT Pembelajaran Mendalam KS
lembar kerja LMS tugas pembelajaran mendalam
Bahan Presentasi Persamaan Elips .pptx
Modul Ajar Deep Learning PAI & BP Kelas 11 SMA Terbaru 2025
SEJARAH kelas 12 SEMESTER SATU DAN DUA.ppt
LKPD_Bab_1_Informatika_Kelas_9. : Informatika dan Keterampilan Generikdocx
ppt kelas XII materi sifat koligatif larutan
Model Lintas minat dan pendalaman materi

Oracle sql

  • 1. Oracle SQL & PL/SQL – 2. Menampilkan Data Kali ini kita akan mempelajari bagaimana menampilkan data dengan menggunakan perintah- perintah SQL. Seperti telah kita pelajari pada pembahasan sebelumnya yaitu Oracle SQL & PL/SQL – 1. Pendahuluan, perintah yang digunakan untuk menampilkan data adalah SELECT. 2.1. Sintaks Dasar Perintah SELECT pada Oracle SQL minimal harus terdiri dari SELECT dan FROM. SELECT [DISTINCT] {*, column [alias], …} FROM table; SELECT : Menampilkan paling tidak satu kolom DISTINCT : Menghilangkan nilai duplikat * : Menampilkan semua kolom column: Menampilkan kolom tertentu alias: Memberikan judul lain kolom FROM table: Menunjukkan nama tabel asal Penulisan Perintah SQL  Perintah-perintah SQL dapat ditulis dalam satu baris atau lebih, namun untuk kemudahan sebaiknya setiap klausa ditulis dalam baris yang berbeda  Perintah-perintah SQL tidak case-sensitive  Gunakan perintah ED untuk mengedit perintah-perintah SQL SQL> ED; 2.1.1. Menampilkan Seluruh Kolom dan Baris Menampilkan seluruh kolom dari suatu tabel dapat dilakukan dengan dua cara, yaitu:  Menyebutkan seluruh nama kolom SELECT id, name, region_id FROM department;  Menggunakan tanda bintang (*) SELECT * FROM department; 2.1.2. Menampilkan Kolom Tertentu Menampilkan kolom tertentu dapat dilakukan dengan cara menyebutkan nama kolom yang ingin ditampilkan datanya. Contoh berikut ini menunjukkan bagaimana cara menampilkan kolom tertentu dari tabel Department.
  • 2. SELECT name FROM department; 2.2. Operasi Aritmatika Perhitungan dapat dilakukan pada perintah SQL dengan menggunakan ekspresi aritmatika, yang dapat mengandung nama-nama kolom, nilai-nilai numerik yang teta, dan operator- operator aritmatika. + : Penjumlahan – : Penguranan * : Perkalian / : Pembagian  Operator perkalian dan pembagian memiliki prioritas di atas penjumlahan dan pengurangan  Operator dengan prioritas yang sama di evaluasi dari kiri ke kanan  Tanda kurung dapat digunakan untuk memaksa prioritas evaluasi dan memperjelas perintah Contoh:  Menampilkan nama belakang dan menghitung gaji tahunan karyawan SELECT last_name, salary*12 FROM employee;  Menampilkan nama belakang, gaji bulanan, dan gaji tahunan karyawan. Gaji tahunan merupakan gaji bulanan di kali dengan 12, ditambah dengan bonus 1.000.000 SELECT last_name, salary, salary*12+1000000 FROM salary;  Menampilkan nama belakang, gaji bulanan, dan gaji tahunan karyawan. Gaji tahunan merupakan gaji bulanan ditambah dengan bonus 1.000.000, di kali dengan 12 SELECT last_name, salary, 12*(salary+1000000) FROM employee; 2.3. Alias Kolom SQL*Plus menggunakan nama kolom sebagai judul dalam menampilkan hasil query. Padahal terkadang nama kolom sulit di mengerti atau bahkan tidak memiliki arti. Kita dapat mengubah tampilan judul kolom menggunakan alias (nama lain). Contoh
  • 3. Menampilkan nama belakang, gaji bulanan, dan gaji tahunan karyawan. Gaji tahunan merupakan gaji bulanan di tambah dengan bonus 1.000.000, di kali dengan 12 dan di tampilkan dengan judul GAJI_TAHUNAN. SELECT last_name, salary, 12*(salary+1000000) AS GAJI_TAHUNAN FROM employee; Kita boleh menggunakan AS sebelum alias kolom untuk memenuhi standar ANSI SQL 92. 2.3.1. Alias Kolom dengan Tanda Petik Dua Jika alias kolom mengandung spasi, karakter khusus seperti # atau $, atau case-sensitive (membedakan huruf besar dan kecil), gunakan tanda petik dua pada alias kolom tersebut. Contoh Memodifikasi query sebelumnya, gaji tahunan ditampilkan dengan judul Gaji Tahunan. SELECT last_name, salary, 12*(salary+1000000) AS “Gaji Tahunan” FROM employee; 2.4. Operator Penggabungan Kita dapat menggabungkan satu kolom dengan lainnya, ekspresi aritmatika, atau nilai tetap untuk menciptakan ekspresi karakter menggunakan operator penggabungan (||). Kolom- kolom pada setiap sisi dari operator di kombinasikan untuk menghasilkan satu output kolom tunggal. Contoh: Menampilkan nama lengkap karyawan dengan judul Karyawan. SELECT first_name||last_name AS “Karyawan” FROM employee; Menampilkan nama lengkap dan jabatan karyawan dengan judul Karyawan. Dalam contoh ini antara nama depan dan nama belakang di pisahkan spasi, dan antara nama lengkap dan jabatan di pisahkan koma. SELECT first_name||’ ‘||last_name||’, ‘||title AS “Karyawan” FROM employee; 2.5. Manajemen Nilai Null Null adalah nilai yang tidak tersedia, tidak diberikan, tidak diketahui, atau tidak dapat digunakan. Null tidak sama dengan nol atau spasi. Nol adalah angka, dan spasi adalah karakter. Kolom dapat mengandung nilai null, kecuali kolom yang telah didefinisikan sebagai NOT NULL atau PRIMARY KEY ketika tabel diciptakan. 2.5.1. Nilai Null dalam Ekspresi Aritmatika
  • 4. Jika nilai kolom dalam sebuah ekspresi adalah null, maka hasilnya juga null. Sebagai contoh, jika kita berusaha melakukan pembagian terhadap nol, maka akan terjadi kesalahan. Namun jika kita membagi terhadap null, maka hasilnya adalah null. Contoh Menampilkan nama belakang, gaji, jabatan, dan hasil perhitungan komisi. SELECT last_name, title, salary, salary*commission_pct/100 KOMISI FROM employee; 2.5.2. Fungsi NVL Fungsi NVL digunakan untuk mengkonversi nilai null menjadi nilai yang kita kehendaki. Sintaks fungsi NVL adalah sebagai berikut: NVL (expr1, expr2) expr1: nilai sumber atau ekspresi yang mungkin bernilai null expr2: nilai target hasil konversi null Kita dapat menggunakan fungsi NVL untuk mengkonversi tipe data apapun, namun hasilnya akan selalu sama dengan tipe data dari expr1. Tipe data dan contoh konversi:  NUMBER o NVL (kolom_angka,9)  DATE o NVL (kolom_tanggal,’01-JAN-99′)  CHAR dan VARCHAR2 o NVL (kolom_karakter,’Tidak tersedia’) Contoh: Berikut ini adalah modifikasi dari query sebelumnya, namun nilai null yang mungkin dihasilkan oleh prosentase komisi dalam hasil perhitungan komisi dikonversi menjadi nol. SELECT last_name, title, salary, salary*NVL(commission_pct,0)/100 KOMISI FROM employee; 2.6. MencegahTampilnya Nilai Duplikat Tampilan default dari query adalah seluruh baris termasuk baris-baris duplikat (dobel). Contoh: Menampilkan seluruh nama departemen dari tabel DEPARTMENT.
  • 5. SELECT name FROM department; 2.6.1. Penggunaan Keyword DISTINCT Baris-baris duplikat hasil query dapat dikurangi dengan menggunakan keyword DISTINCT dan SELECT. Contoh: Menampilkan nama departemen secara unik (tidak ada nilai duplikat). SELECT DISTINCT name FROM department; Menampilkan kombinasi-kombinasi berbeda dari jabatan dan kode departemen. SELECT DISTINCT title, dept_id FROM employee; 2.7. Menampilkan Struktur Tabel Dalam SQL*Plus kita dapat menampilkan struktur dari suatu tabel dengan menggunakan perintah DESCRIBE. Perintah ini menghasilkan nama kolom, tipe data, dan kolom mana yang harus berisi data (NOT NULL). DESC[RIBE] tablename tablename: nama dari tabel, view atau synonym yang boleh diakses user Contoh: Menampilkan struktur tabel DEPARTMENT. DESCRIBE department; atau DESC department; Name: nama kolom Null?: menunjukkan apakah suatu kolom harus berisi data Type: tipe data dari kolom 2.7.1. Tipe Data  NUMBER(p,s) Digit maksimum p dan s angka dibelakang koma
  • 6.  VARCHAR2(s)  Tipe data karakter dengan panjang bervariasi (maksimum 2000)  CHAR(s) Tipe data karakter dengan panjang tetap  DATE Tipe data tanggal antara 1 Januari 4217 BC dan 4712 AD 2.8. Menciptakan Laporan Kita dapat mengontrol format tampilan dari laporan menggunakan perintah COLUMN. Kita dapat mengubah judul, lebar, dan format kolom. COL [ UMN ] [{ column | alias } [ option . . . ]] 2.8.1. Pilihan-pilihan Perintah COLUMN  CLE[AR]  FOR[MAT] format  HEA[DING] text  JUS[TIFY] {align}  NUL[L] text  PRI[NT]  TRU[NCATED]  WRA[PPED]  WOR[D_WRAPPED] 2.8.2. Menciptakan judul-judul kolom COLUMN last_name HEADING ‘Nama|Karyawan’ FORMAT A15 COLUMN salary JUSTIFY LEFT FORMAT $99,990.00 COLUMN hire_date FORMAT A9 NULL ‘Tidak digaji’ Menampilkan setting terbaru kolom LAST_NAME COLUMN last_name Membersihkan setting kolom LAST_NAME COLUMN last_name CLEAR 2.8.3. Menampilkan atau Membersihkan Setting  COL[UMN] column Menampilkan setting terkini dari kolom tertentu
  • 7.  COL[UMN] Menampilkan setting terkini dari seluruh kolom  COL[UMN] column CLE[AR] Membersihkan setting dari kolom tertentu  CLE[AR] COL[UMN] Membersihkan setting dari seluruh kolom 2.8.4. Model-model Format COLUMN  An Mengatur lebar tampilan dari kolom-kolom karakter atau tanggal  9 Posisi numerik (jumlah angka 9 menunjukkan maksimal panjang data yang dapat ditampilkan) Contoh: 999999 Hasil: 1234  0 Menambahkan awalan 0 Contoh: 099999 Hasil: 01234  $ Menambahkan awalan $ Contoh: $9999 Hasil: $1234  L Menambahkan simbol local currency Contoh: L9999 Hasil: L1234
  • 8.  . Menambahkan posisi decimal point Contoh: 9999.99 Hasil: 1234.00  , Menambahkan pemisah ribuan Contoh: 9,999 Hasil: 1,234 2.9. Mengurutkan Data Kita dapat menampilkan data secara urut berdasarkan satu atau beberapa kolom dengan menambahkan klausa ORDER BY pada perintah SELECT yang telah kita pelajari sebelumnya. SELECT [DISTINCT] {*, column [alias], . . .} FROM table [ORDER BY {column, expr} [ASC|DESC]]; ORDER BY: menentukan dasar urutan data yang akan ditampilkan ASC: menampilkan data secara urut menaik (ascending). Ini merupakan default pengurutan data DESC: menampilkan data secara urut menurun (descending) 2.9.1. Default Pengurutan Data Apabila kita tidak menuliskan klausa ASC atau DESC dalam klausa ORDER BY, maka proses pengurutan dilakukan secara ascending (default). Berikut ini hal-hal yang perlu diketahui mengenai pengurutan data.  Nilai-nilai numerik ditampilkan dengan nilai terkecil terlebih dahulu, contoh 1-999  Nilai-nilai tanggal ditampilkan dengan nilai paling awal terlebih dahulu, contoh 01- JAN-92 sebelum 01-JAN-95  Nilai-nilai karakter ditampilkan secara alphabet, contoh A pertama dan Z terakhir  Nilai-nilai null ditampilkan terakhir dalam urutan ascending dan pertama dalam urutan descending Contoh: Menampilkan data karyawan urut berdasarkan nama belakang.
  • 9. SELECT last_name, dept_id, hire_date FROM employee ORDER BY last_name; Contoh diatas dapat dimodifikasi sehingga urut berdasarkan nama belakang secara menurun (descending) dengan menambahkan klausa DESC. SELECT last_name, dept_id, hire_date FROM employee ORDER BY last_name DESC; 2.9.2. Mengurutkan Data Menggunakan Alias Kolom Kita dapat menggunakan alias kolom dalam klausa ORDER BY. Fitur ini tersedia sejak Oracle 7 Release 7.0.16. Contoh Menampilkan data karyawan urut berdasarkan nama belakang. SELECT last_name EMPLOYEE, hire_date FROM employee ORDER BY EMPLOYEE DESC; 2.9.3. Mengurutkan Data Berdasarkan Posisi Kolom Metode lain untuk mengurutkan data adalah berdasarkan posisi kolom. Hal ini khususnya berguna jika mengurutkan berdasarkan ekspresi yang panjang. Daripada harus mengetikkan ekspresi yang panjang, kita dapat menentukan posisi kolom dalam SELECT. Contoh: Menampilkan data karyawan urut berdasarkan gaji tahunan. SELECT last_name, salary*12 FROM employee ORDER BY 2; 2.9.4. Mengurutkan Data Berdasarkan Beberapa Kolom Kita dapat mengurutkan hasil query berdasarkan beberapa kolom. Batasannya adalah jumlah kolom dalam tabel. Contoh Menampilkan data karyawan urut secara menaik (ascending) berdasarkan kode departemen, kemudian urut secara menurun (descending) berdasarkan gaji.
  • 10. SELECT last_name, salary FROM employee ORDER BY dept_id, gaji DESC; 2.10. Latihan Tampilkan seluruh tabel yang Anda miliki. SELECT table_name FROM user_tables; Tampilkan struktur tabel DEPARTMENT. DESCRIBE department; Tampilkan semua data tabel DEPARTMENT. SELECT * FROM department; Tampilkan nama belakang pegawai, kode departemen dimana pegawai tersebut bekerja, dan kode atasan pegawai tersebut. SELECT last_name, dept_id, manager_id FROM employee; Tampilkan nama belakang, gaji tahunan dan prosentase komisi yang diterima oleh masing- masing pegawai. SELECT last_name, salary*12, commission_pct FROM employee; Tampilkan nama belakang, gaji bulanan dan kompensasi tahunan pegawai. Hitunglah kompensasi tahunan dengan mengalikan gaji bulanan dengan 12, ditambah dengan bonus sebesar $100. SELECT last_name, salary, 12*salary+100 FROM employee; Tampilkan nama belakang, gaji bulanan dan kompensasi tahunan pegawai. Hitunglah kompensasi tahunan dengan menambahkan gaji bulanan dengan $100, kemudian dikalikan dengan 12. SELECT last_name, salary, 12*(salary+100) FROM employee; Tampilkan kembali perintah diatas, namun khusus untuk kompensasi tahunan pegawai, ganti judul kolom dengan ANNUAL_SALARY.
  • 11. SELECT last_name, salary, 12 * (salary + 100) AS ANNUAL_SALARY FROM employee; Tampilkan sekali lagi perintah diatas, namun khusus untuk kompensasi tahunan pegawai, ganti judul kolom dengan Annual Salary. SELECT last_name, salary, 12 * (salary + 100) AS “Annual Salary” FROM employee; Tampilkan nama lengkap pegawai dengan judul Employees. SELECT first_name | | last_name AS “Employees” FROM employee; Tampilkan nama lengkap dan jabatan pegawai dengan judul Employees. Diantara nama depan dan nama belakang pisahkan dengan spasi, dan diantara nama belakang dengan jabatan pisahkan dengan koma. SELECT first_name | | ‘ ‘ | | last_name | | ‘, ‘ | | title “Employees” FROM employee; Tampilkan nama belakang, jabatan dan komisi bulanan pegawai. Hitung komisi pegawai dengan mengalikan gaji bulanan dengan prosentase komisi, kemudian beri judul COMM. SELECT last_name, title, salary * commission_pct / 100 COMM FROM employee; Tampilkan kembali soal diatas, dengan ketentuan bahwa data komisi bulanan pegawai yang tadinya kosong (tidak ada nilainya) dirubah menjadi angka 0. SELECT last_name, title, salary * NVL(commission_pct,0) / 100 COMM FROM employee; Tampilkan nama departemen dari tabel S_DEPT. Perhatikan bahwa terdapat beberapa data yang memiliki nilai sama. SELECT name FROM department; Tampilkan kembali soal diatas dengan ketentuan data yang memiliki nilai sama cukup ditampilkan cukup satu kali saja. SELECT DISTINCT name FROM department; Tampilkan kombinasi yang berbeda antara jabatan pegawai dan kode departemen dimana pegawai tersebut bekerja. SELECT DISTINCT title, dept_id FROM department;
  • 12. Tampilkan nama belakang, gaji bulanan dan keterangan pegawai. Perhatikan bentuk tampilannya. SELECT last_name, salary, comments FROM employee; Tampilkan kembali nama belakang , gaji bulanan dan keterangan pegawai. Judul untuk nama belakang adalah Employee Name, dengan ketentuan bahwa judul tersebut terdiri dari dua baris, baris pertama Employee dan baris kedua Name dengan panjang data maksimal 15 karakter. Sedangkan gaji bulanan pegawai memiliki format $99,999.00. Untuk keterangan yang kosong diganti dengan ‘No comment’ dengan panjang data maksimal 15 karakter. COLUMN last_name HEADING ‘Employee|Name’ FORMAT A15 COLUMN salary FORMAT $99,999.00 COLUMN comments FORMAT A15 NULL ‘No comment’ SELECT last_name, salary, comments FROM employee; Tampilkan kembali soal diatas, dengan ketentuan data ditampilkan dengan format asli seperti sebelum diberikan perintah format column. COLUMN last_name CLEAR; COLUMN salary CLEAR; COLUMN comments CLEAR; SELECT last_name, salary, comments FROM employee;