Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

SQL-Fungsi Baris Tunggal Oleh : Devie Rosa Anamisa.

Presentasi serupa


Presentasi berjudul: "SQL-Fungsi Baris Tunggal Oleh : Devie Rosa Anamisa."— Transcript presentasi:

1 SQL-Fungsi Baris Tunggal Oleh : Devie Rosa Anamisa

2 Fungsi SQL Fungsi dapat digunakan untuk hal-hal berikut ini: Fungsi dapat digunakan untuk hal-hal berikut ini: Membentuk kalkulasi pada data Membentuk kalkulasi pada data Memodifikasi item data secara individual Memodifikasi item data secara individual Manipulasi output dari sekumpulan baris Manipulasi output dari sekumpulan baris Format tanggal dan bilangan untuk keperluan tampilan Format tanggal dan bilangan untuk keperluan tampilan

3 Fungsi Karakter Fungsi karakater terbagi menjadi: Fungsi karakater terbagi menjadi: Fungsi konversi, yaitu LCASE, UCASE Fungsi konversi, yaitu LCASE, UCASE Fungsi manipulasi : CONCAT,INSTR Fungsi manipulasi : CONCAT,INSTR Fungsi tanggal : now, date, time, add_months, round, trunc Fungsi tanggal : now, date, time, add_months, round, trunc SELECT hire_date,hire_date+1 AS besok FROM employees; SELECT hire_date,hire_date+1 AS besok FROM employees; Fungsi konversi implisit, atau eksplisit :format Fungsi konversi implisit, atau eksplisit :format SELECT format(date,"dd-mm-yyyy") FROM employees; SELECT format(date,"dd-mm-yyyy") FROM employees;

4 LCASE, UCASE LCASE : LCASE : SELECT Lcase( last_name ) FROM employees; SELECT Lcase( last_name ) FROM employees; UCASE : UCASE : SELECT Ucase( last_name ) FROM employees; SELECT Ucase( last_name ) FROM employees;

5 CONCAT,INSTR CONCAT: CONCAT: SELECT concat( first_name, last_name ) NAME FROM employees; SELECT concat( first_name, last_name ) NAME FROM employees; INSTR: INSTR: SELECT last_name, instr( last_name, 'a' ) "contain 'a'?" FROM employees; SELECT last_name, instr( last_name, 'a' ) "contain 'a'?" FROM employees;

6 Menggabungkan Tabel (JOIN) Alasan Alasan Sering diperlukan melakukan beberapa operasi database untuk mendapatkan suatu informasi yang diinginkan Sering diperlukan melakukan beberapa operasi database untuk mendapatkan suatu informasi yang diinginkan Perintah SQL dibatasi hanya berupa satu perintah/operasi saja untuk mendapatkan suatu hasil yang diinginkan Perintah SQL dibatasi hanya berupa satu perintah/operasi saja untuk mendapatkan suatu hasil yang diinginkan Tidak dapat menggunakan beberapa perintah/operasi sekaligus Tidak dapat menggunakan beberapa perintah/operasi sekaligus Diperlukan cara untuk menggabungkan beberapa perintah/operasi menjadi satu perintah/operasi tunggal Diperlukan cara untuk menggabungkan beberapa perintah/operasi menjadi satu perintah/operasi tunggal Pertanyaan Pertanyaan Siapa nama pegawai yang bekerja sebagai it_programer di departemen IT Siapa nama pegawai yang bekerja sebagai it_programer di departemen IT Jawab Jawab Cari nama pegawai dari tabel pegawai yang bekerja di departemen IT Cari nama pegawai dari tabel pegawai yang bekerja di departemen IT SELECT [nama_pegawai] FROM employees WHERE job_id= “it_prog” SELECT [nama_pegawai] FROM employees WHERE job_id= “it_prog” Ternyata informasi nama pegawai dari tabel pegawai masih dalam bentuk kode departemen=60 Ternyata informasi nama pegawai dari tabel pegawai masih dalam bentuk kode departemen=60 Cari nama pegawai pada tabel employees menggunakan kunci pencarian id_departmen Cari nama pegawai pada tabel employees menggunakan kunci pencarian id_departmen SELECT first_name FROM employees WHERE department_id=60 SELECT first_name FROM employees WHERE department_id=60

7 Contoh Alasan Join (lanj.) Dengan menggunakan join, pertanyaan sebelumnya dapat dicari dengan sekali perintah/proses saja Dengan menggunakan join, pertanyaan sebelumnya dapat dicari dengan sekali perintah/proses saja Cari nama pegawai dari tabel employees sekaligus tabel departemen, yang job_id=“it_prog” dan kode departemen=“60” dari departemen Cari nama pegawai dari tabel employees sekaligus tabel departemen, yang job_id=“it_prog” dan kode departemen=“60” dari departemen SELECT s.first_name as pewagai, s.job_id as pekerjaan d.id_department as departement SELECT s.first_name as pewagai, s.job_id as pekerjaan d.id_department as departement FROM employees as s, departments as d WHERE s.job_id=“it_prog” AND d.department_id=“60” and s.department_id = d.department_id

8 Jenis Join Cross/kartesian join Cross/kartesian join inner/equi join inner/equi join natural join natural join join using join using non equi join non equi join outer join outer join left outer join left outer join right outer join right outer join full outer join full outer join ACCESS 2003 tidak memiliki Full Outer Join ACCESS 2003 tidak memiliki Full Outer Join self join self join

9 Kartesian/Cross Join Digunakan untuk mendapatkan berbagai kemungkinan kombinasi Digunakan untuk mendapatkan berbagai kemungkinan kombinasi Hasil Join Hasil Join Kolom berupakan gabungan dari semua tabel yang di-join Kolom berupakan gabungan dari semua tabel yang di-join Baris merupakan semua kombinasi (jumlah perkalian) dari semua baris yang di-join Baris merupakan semua kombinasi (jumlah perkalian) dari semua baris yang di-join Contoh Contoh SELECT * FROM employees, departments SELECT * FROM employees, departments

10 Inner/Natural Join NATURAL JOIN dibuat berdasarkab semua kolom pada dua tabel yang memiliki nama yang sama. NATURAL JOIN dibuat berdasarkab semua kolom pada dua tabel yang memiliki nama yang sama. Baris terpilih adalah yang memiliki nilai yang sama untuk setiap kolom yang bersesuaian dari dua tabel. Baris terpilih adalah yang memiliki nilai yang sama untuk setiap kolom yang bersesuaian dari dua tabel. Jika kolom memilki nama yang sama tapi tipe data berbeda, maka akan terjadi error. Jika kolom memilki nama yang sama tapi tipe data berbeda, maka akan terjadi error. SELECT department_id, department_name, location_id, city FROM departments NATURAL JOIN location SELECT department_id, department_name, location_id, city FROM departments NATURAL JOIN location

11 Inner/Equi Join Digunakan untuk mendapatkan informasi dari beberapa tabel berdasar relasi yang sesuai Digunakan untuk mendapatkan informasi dari beberapa tabel berdasar relasi yang sesuai Inner artinya informasi relasi ada pada setiap tabel Inner artinya informasi relasi ada pada setiap tabel Misal tabel employees memiliki primary key employee_id dan memiliki foreign key department_id dimana department_id ini merupakan primary key dari tabel department. Misal tabel employees memiliki primary key employee_id dan memiliki foreign key department_id dimana department_id ini merupakan primary key dari tabel department. SELECT * FROM employees INNER JOIN departments ON employees.department_id=department. department_id SELECT * FROM employees INNER JOIN departments ON employees.department_id=department. department_id Equi artinya relasi dinyatakan dengan bentuk persamaan (sama dengan, =) Equi artinya relasi dinyatakan dengan bentuk persamaan (sama dengan, =) SELECT * FROM employees, departments WHERE department_id=department_id SELECT * FROM employees, departments WHERE department_id=department_id

12 Inner/Non Equi Join Relasi antara dua tabel disebut non-equijoin jika kolom pada tabel pertama berkorespondensi langsung dengan kolom pada tabel kedua. Relasi antara dua tabel disebut non-equijoin jika kolom pada tabel pertama berkorespondensi langsung dengan kolom pada tabel kedua. Misal salary pada tabel employees harus berada diantara nilai salary terendah dengan nilai salary tertinggi yang ada pada tabel job_grades Misal salary pada tabel employees harus berada diantara nilai salary terendah dengan nilai salary tertinggi yang ada pada tabel job_grades SELECT e.last_name, e.salary, j.gra FROM employees e, job_grades j WHERE e.salary BETWEEN j.lowest_sal AND j.highest_sal; SELECT e.last_name, e.salary, j.gra FROM employees e, job_grades j WHERE e.salary BETWEEN j.lowest_sal AND j.highest_sal;

13 Outer Join Digunakan untuk mendapatkan informasi dari suatu tabel yang data-nya sesuai dan tidak sesuai Digunakan untuk mendapatkan informasi dari suatu tabel yang data-nya sesuai dan tidak sesuai

14 Left Outer Join Mencari informasi yang relasi ada pada ke dua sisi tabel dan yang relasi tabel yang data pada sisi kiri tidak dijumpai pada sisi kanan Mencari informasi yang relasi ada pada ke dua sisi tabel dan yang relasi tabel yang data pada sisi kiri tidak dijumpai pada sisi kanan Tampilkan data siswa yang memiliki dosen wali sekaligus yang tidak Tampilkan data siswa yang memiliki dosen wali sekaligus yang tidak SELECT * FROM siswa LEFT JOIN dosen ON siswa.wali=dosen.nip SELECT * FROM siswa LEFT JOIN dosen ON siswa.wali=dosen.nip

15 Right Outer Join Mencari informasi yang relasi ada pada ke dua sisi tabel dan yang relasi tabel yang data pada sisi kanan tidak dijumpai pada sisi kiri Mencari informasi yang relasi ada pada ke dua sisi tabel dan yang relasi tabel yang data pada sisi kanan tidak dijumpai pada sisi kiri Tampilkan data dosen yang sebagai dosen wali dan yang tidak Tampilkan data dosen yang sebagai dosen wali dan yang tidak SELECT * FROM siswa RIGHT JOIN dosen ON siswa.wali=dosen.nip; SELECT * FROM siswa RIGHT JOIN dosen ON siswa.wali=dosen.nip;

16 Self Join Sama dengan join lainnya, hanya melibatkan tabel yang sama Sama dengan join lainnya, hanya melibatkan tabel yang sama SELECT d.nama as Dosen, a.nama as Atasan FROM dosen as d, dosen as a WHERE d.atasan=a.nip SELECT d.nama as Dosen, a.nama as Atasan FROM dosen as d, dosen as a WHERE d.atasan=a.nip

17 Contoh Join Kartesian, untuk mendapatkan seluruh kombinasi data Kartesian, untuk mendapatkan seluruh kombinasi data SELECT * FROM siswa, dosen; SELECT * FROM siswa, dosen; Inner, relasi antar tabel dengan nilai data yang sama tepat Inner, relasi antar tabel dengan nilai data yang sama tepat SELECT * FROM siswa INNER JOIN dosen ON siswa.wali=dosen.nip SELECT * FROM siswa INNER JOIN dosen ON siswa.wali=dosen.nip Nonequijoin, untuk mencari/membandingkan nilai antara Nonequijoin, untuk mencari/membandingkan nilai antara SELECT * FROM nilai,konversi WHERE na>=min AND na =min AND na<=max; outer join, relasi dengan tabel yang kemungkinan nilai datanya tidak ada outer join, relasi dengan tabel yang kemungkinan nilai datanya tidak ada SELECT * FROM siswa LEFT JOIN dosen ON siswa.wali=dosen.nip; SELECT * FROM siswa LEFT JOIN dosen ON siswa.wali=dosen.nip; self join, relasi dengan diri sendiri self join, relasi dengan diri sendiri SELECT d.nama as Dosen, a.nama as Atasan FROM dosen as d, dosen as a WHERE d.atasan=a.nip SELECT d.nama as Dosen, a.nama as Atasan FROM dosen as d, dosen as a WHERE d.atasan=a.nip

18 Terima Kasih


Download ppt "SQL-Fungsi Baris Tunggal Oleh : Devie Rosa Anamisa."

Presentasi serupa


Iklan oleh Google