Dokumen tersebut memberikan penjelasan tentang cara merekam dan mengambil data dari basis data client server menggunakan perintah SQL SELECT. Diberikan contoh pembuatan tabel dan pengisian data pada basis data bernama MYAKADEMIKS menggunakan Query Analyzer beserta penjelasan tentang operator dan sintaks SQL untuk mengambil data.
2. www.rahmadani.net 2
Definisi
Retrieving Data adalah Proses untuk
mengambil atau menampilkan record pada
table atau database.
Pada SQL dasar untuk menampilkan atau
mengambil data adalah dengan
menggunakan perintah:SELECT
3. www.rahmadani.net 3
LATIHAN;
1. Buat database dengan nama: MYAKADEMIKS
2. Kemudian aktifkan Database tersebut.
3. Dengan Menggunkan Query Analyzer buat beberapa
struktur tabel sebagai berikut;
TabelTabel Mata_KuliahMata_Kuliah;;
CREATE TABLE Mata_Kuliah
(
Kode_MK Char(5) PRIMARY KEY,
Nama_MK Varchar(35)NOT NULL UNIQUE,
Bobot tinyint NOT NULL,
Kode_Prasyarat Char(5)
)
4. www.rahmadani.net 4
Tabel Alamat
CREATE TABLE Alamat
(
Kode_Pos Char(5) PRIMARY KEY NOT NULL,
Kelurahan Varchar(20) NOT NULL,
Kecamatan Varchar(20) NOT NULL,
Kabupaten Varchar(20) NOT NULL,
Propinsi Varchar(20) NOT NULL,
)
Tabel Waktu
CREATE TABLE Waktu
(
ID_Jam Tinyint Identity(1,1) PRIMARY KEY,
Jam_Mulai Char(5) NOT NULL,
Jam_Selesai Char(5) NOT NULL
)
Tabel Agama
CREATE TABLE Agama
(
Kode_Agama Int Identity(1,1) PRIMARY KEY,
Nama_Agama VarChar(20) NOT NULL,
)
5. www.rahmadani.net 5
Tabel Dosen
CREATE TABLE Dosen
(
Kode_Dosen Char(10) NOT NULL PRIMARY KEY,
Nama_Dosen VarChar(30) NOT NULL,
Jenkel Char,
Kode_Agama Int FOREIGN KEY REFERENCES Agama (Kode_Agama),
Nama_Jalan Varchar (50),
Kode_Pos Char(5) FOREIGN KEY REFERENCES Alamat (Kode_Pos)
)
Tabel Jurusan
CREATE TABLE Jurusan
(
Kode_Jurusan Char(4) NOT NULL PRIMARY KEY,
Nama_Jurusan VarChar(50) NOT NULL,
Ketua Char(10) FOREIGN KEY REFERENCES Dosen (Kode_Dosen)
)
6. www.rahmadani.net 6
Tabel Kelas
CREATE TABLE Kelas
(
Kelas Char(6) NOT NULL PRIMARY KEY,
Kode_Jurusan Char(4) FOREIGN KEY REFERENCES
Jurusan(Kode_jurusan),
Dosen_Wali Char(10) FOREIGN KEY REFERENCES Dosen(Kode_Dosen)
)
Tabel Mahasiswa
CREATE Table Mahasiswa
Nim Char(10) PRIMARY KEY,
Nama Varchar(40) NOT NULL,
JK Char CHECK (jk=‘L’ OR jk=‘P’),
Kode_Agama int FOREIGN KEY REFERENCES Agama (Kode_Agama),
Nama_Jalan Varchar(50),
Kode_Pos Char(5) FOREIGN KEY REFERENCES Alamat(Kode_Pos),
Kelas Char(6) FOREIGN KEY REFERENCES Kelas (kelas)
)
8. www.rahmadani.net 8
Case+Tugas…!!
1. Setelah semua rancangan tabel selesai, buatlah diagram relasi pada
seluruh rancangan tabel??
2. Setelah selesai seluruh table, isikan record yang sesuai dengan
menggunakan perintah INSERT minimal 5-10 record.
INSERT nama_tabel(field1,field2, field3, fieldn)
VALUES(record1,record2,record3,recordn)
Many record:
INSERT INTO nama_tabel VALUES(record1,record2,record3,recordn)
3. Menampilkan Semua Baris dan Semua Kolom
SELECT*Nama_Tabel
4. Pada Tabel Matakuliah, tampilkan field Kode_MK dan Nama_MK
SELECT field1, field2,field n FROM Nama_Tabel
Kemudian dengan seperti Syntaks diatas, Tampilkan Field Nama_Dosen,
Nama_Jalan dan Kode_Pos pada tabel DOsen
5. Pada Tabel Matakuliah, coba tampilkan satu record pada field Kode_MK
SELECT nama_fileld FROM nama_tabel WHERE nama_field=‘isi record’
9. www.rahmadani.net 9
Pada Tabel Mata_Kuliah, dengan record sebagai berikut;
6. Buat Perintah untuk menampilkan data Mata_Kuliah yang diprasyarati DT007??
7. Tampilkan kode Mata_Kuliah dan Nama_MK yang prasyaratnya selain DT002?
8. Tampilkan data yang bobot nya 3 SKS dan tidak mempunyai prasyarat?
9. Buatlah perintah untuk menampilkan 5 data matakuliah berurut turun berdasarkan
Nama matakuliah?
10. Buat perintah untuk menampilkan semua matakuliah yang berkode
DT002 s/d DT009 berbobot diatas 2 SKS dan mempunyai prasyarat?
11. Tampilkan nama matakuliah berbobot 3 SKS yang berawalan ‘L’ hingga ‘O’?
10. www.rahmadani.net 10
12. Pada Tabel Matakuliah,tampilkan Data Menggunakan Operator
Relasional yang jumlah SKS nya tidak sama dengan 4??
Syntax: SELECT*FROM Nama_Table WHERE sks <> 4
13. Pastikan data/record pada Tabel Matakuliah yang sudah Anda input
berjumlah minimal 10 record dan nilainya berurut, dengan tambahan
oprator logika AND tampilkan data yg berurut 03 s/d 09.
Syntax:
SELECT*FROM nama_matakuliah WHERE nama_field >=‘record03’
nama_operator nama_field <=‘record09’
14. Menampilkan Data Menggunakan Operator Logika
- Pada Tabel Dosen, tampilkan data yang tidak berjenis kelamin laki-
laki??
- Pada tabel dosen, tampilkan kode_dosen misal:001 dan
kode_agama=1??
15. Menampilkan Data dengan Menggunakan Operator Set (UNION
dan UNION ALL)
- Menngunakan Operator Set UNION, tampilkan Nama Dosen dan
Mahasiswa
Syntax: SELECT nama_field from nama_tabel UNION
SELECT nama_field FROM nama_table
11. www.rahmadani.net 11
16. Menampilkan Data dalam Nilai Range (BETWEEN)
Syntax: SELECT*FROM nama_tabel WHERE nama_field BETWEEN x AND y
- Pada Tabel Mata_Kuliah, tampilkan data SKS antara bobot 1-3??
- Pada tabel Waktu, tampilkan id_jam antara 2 s/d 5??
-Pada tabel KHS, tampilkan nilai antara ‘A’ sampai ‘D’?
17. Menampilkan Data paling Atas (TOP)
Suntax: SELECT TOP n* FROM nama_table
- Tampilkan 10 data Mata_Kuliah dari urutan yang paling atas??
18. Menampilkan Kolom Tanpa Data
Syntax: SELECT*FROM nama_tabel WHERE nama_field IS NULL
- Tampilkan data Mata_kuliah yang tidak mempunyai prasyarat??
19. Menampilkan Data Yang Unik(DISTINCT)
Syntax: SELECT DISTINCT SKS FROM nama_tabel
- Tampilkan data unik pada field SKS dari Tabel mata_kuliah??
12. www.rahmadani.net 12
20. Menampilkan Data Secara Urut (ORDER BY)
Syntax;
SELECT*FROM nama_tabel ORDER BY nama_field
SELECT*FROM nama_tabel ORDER BY nama_field ASC
SELECT*FROM nama_tabel ORDER BY nama_field DESC
- Tampilakan semua data pada tabel Mata_Kuliah dengan format
Ascending dan Descending??
21.
-Pada Tabel Alamat diatas ganti data Field Kabupaten=‘Langkat’ menjadi
Kabupaten=‘Langkat Berseri’
-Ubah Kelurahan ‘Tangsi’ menjadi ‘Kampung Binje’ serta Kabupaten ‘Binjai’
menjadi ‘Binjai Kotaku’
- Hapus record dengan Kode Pos=‘55287’
13. www.rahmadani.net 13
22. Menampilkan data dengan opearator karakter (LIKE) dan WILCARD %
-Tampikan data yang berkode pos ‘55283’??
- Tampilkan data denagan Nama_Dosen bertitel ‘M.Kom’ dan berdomisili di ‘Medan’ ?
- dengan WILDCARD LIKE, Tampilkan data yang berjenis kelamin ‘P’?
Syntax: SELECT* FROM nama_tabel WHERE nama_field LIKE ‘% kata_kunci%’