IKG2I4 / Software Project I

Ukuran: px
Mulai penontonan dengan halaman:

Download "IKG2I4 / Software Project I"

Transkripsi

1 IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK /11/2015

2 WEEK 10 Complex query (aggregate function): COUNT, MAX, MIN, SUM, AVG Klausa GROUP BY. Klausa HAVING. JOIN dan tipe-tipenya: natural join (USING, ON), self-join, outer join (left, right, full), Cartesian Product (cross join). 2 3/11/2015

3 COMPLEX QUERY (AGGREGATE FUNCTION) SQL menyediakan beberapa fungsi agregat (aggregate function: SUM/MAX/MIN/AVG/COUNT) untuk menampilkan resume statistik dari suatu tabel, contohnya nilai tertinggi/terendah, ratarata, jumlah, dsb. Contoh: menampilkan gaji terendah/tertinggi, rata-rata dan jumlah total (dari tabel employees) 3 3/11/2015

4 AGGREGATE FUNCTION + GROUP BY Query Aggregate function terhadap suatu tabel dapat disertai pengelompokan data berdasarkan klasifikasi tertentu, misalnya per departemen. 4 3/11/2015

5 KLAUSA HAVING Klausa HAVING adalah tambahan kondisi untuk query aggregate function. HAVING mirip seperti WHERE. Bedanya HAVING digunakan pada query yang mengandung aggregate function. 5 3/11/2015

6 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT AVG(salary), MAX(salary), MIN(salary), SUM(salary) FROM employees WHERE job_id LIKE '%REP%'; SELECT MIN(hire_date), MAX(hire_date) FROM employees; SELECT COUNT(*) FROM employees WHERE department_id = 50; SELECT COUNT(DISTINCT department_id) FROM employees; 6 3/11/2015

7 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT AVG(commission_pct) FROM employees; SELECT department_id, AVG(salary) FROM employees GROUP BY department_id; SELECT AVG(salary) FROM employees GROUP BY department_id; 7 3/11/2015

8 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT department_id dept_id, job_id, SUM(salary) FROM employees GROUP BY department_id, job_id ORDER BY department_id; SELECT department_id, MAX(salary) FROM employees GROUP BY department_id HAVING MAX(salary)>10000; 8 3/11/2015

9 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT job_id, SUM(salary) FROM employees WHERE job_id NOT LIKE '%REP%' GROUP BY job_id HAVING SUM(salary) > ORDER BY SUM(salary); SELECT MAX(AVG(salary)) FROM employees GROUP BY department_id; 9 3/11/2015

10 Buatlah query SQL untuk menampilkan data berikut ini: Find the highest, lowest, sum, and average salary of all employees. Label the columns as Maximum, Minimum, Sum, and Average, respectively. Then, modify the query you have created, to display the minimum, maximum, sum, and average salary for each job type. 10 3/11/2015

11 Write a query to display the number of people with the same job. 11 3/11/2015

12 Find the difference between the highest and lowest salaries. Label the column DIFFERENCE. 12 3/11/2015

13 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: 13 3/11/2015 SELECT department_id, department_name, location_id, city FROM departments NATURAL JOIN locations; SELECT employee_id, last_name, location_id, department_id FROM employees JOIN departments USING (department_id); SELECT e.employee_id, e.last_name, e.department_id, d.department_id, d.location_id FROM employees e JOIN departments d ON (e.department_id = d.department_id);

14 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT employee_id, city, department_name FROM employees e JOIN departments d ON d.department_id = e.department_id JOIN locations l ON d.location_id = l.location_id; SELECT e.employee_id, e.last_name, e.department_id, d.department_id, d.location_id FROM employees e JOIN departments d ON (e.department_id = d.department_id) WHERE e.manager_id = 149; 14 3/11/2015

15 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT e.last_name, e.department_id, d.department_name FROM employees e LEFT OUTER JOIN departments d ON (e.department_id = d.department_id); SELECT e.last_name, e.department_id, d.department_name FROM employees e RIGHT OUTER JOIN departments d ON (e.department_id = d.department_id); 15 3/11/2015

16 Eksekusi query-query berikut, amati hasil yang muncul, dan pahami mengenai arti query tersebut: SELECT e.last_name, d.department_id, d.department_name FROM employees e FULL OUTER JOIN departments d ON (e.department_id = d.department_id); SELECT last_name, department_name FROM employees CROSS JOIN departments; 16 3/11/2015

17 Buatlah query SQL untuk menampilkan data berikut ini: Write a query for the HR department to produce the addresses of all the departments. Use the LOCATIONS and COUNTRIES tables. Show the location ID, street address, city, state or province, and country in the output. Use a NATURAL JOIN to produce the results. 17 3/11/2015

18 The HR department needs a report of all employees. Write a query to display the last name, department number, and department name for all the employees. 18 3/11/2015

19 The HR department needs a report of employees in Toronto. Display the last name, job, department number, and the department name for all employees who work in Toronto. 19 3/11/2015

20 THANK YOU

PRACTISE

PRACTISE PRACTISE 5 1. Menampilkan query dari 2 buah table menggunakan operator natural join. Hal ini dimungkinkan karena ke-dua table memiliki kunci yang sama, yaitu location_id. Dimana berperan sebagai primary

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya 5.1. Sasaran Dapat menulis statement

Lebih terperinci

B a s i s D a t a - 1 C H A P T E R SQL. Function & Agregat. Copyright 2005 PENS-ITS

B a s i s D a t a - 1 C H A P T E R SQL. Function & Agregat. Copyright 2005 PENS-ITS C H A P T E R 13 SQL Function & Agregat Objectives Tujuan: Mengenal perintah SQL dalam: - Operasi Himpunan - Fungsi Agregat S Q L Operasi Himpunan Pada ekspresi SQL, terdapat operasi yang berhubungan dengan

Lebih terperinci

B a s i s D a t a - 1 C H A P T E R SQL OPERASI JOIN. Copyright 2005 PENS-ITS

B a s i s D a t a - 1 C H A P T E R SQL OPERASI JOIN. Copyright 2005 PENS-ITS C H A P T E R 14 SQL OPERASI JOIN Objectives Tujuan: Mengenal perintah SQL operasi JOIN: - Equijoin (Inner Join atau Simple Join) - Non-Equijoin - Outer Join (Left Outer Join & Right Outer Join) - Self

Lebih terperinci

B a s i s D a t a C H A P T E R SQL OPERASI JOIN. Arif Basofi PENS 2015

B a s i s D a t a C H A P T E R SQL OPERASI JOIN. Arif Basofi PENS 2015 C H A P T E R 14 SQL OPERASI JOIN Arif Basofi PENS 2015 Objectives Tujuan: Mengenal perintah SQL dengan operasi JOIN: - Equijoin (Inner Join atau Simple Join) - Non-Equijoin - Outer Join (Left Outer Join

Lebih terperinci

B a s i s D a t a. Tatap MUka. SQL Query & Agregate Function. Arif Basofi PENS

B a s i s D a t a. Tatap MUka. SQL Query & Agregate Function. Arif Basofi PENS Tatap MUka 3 SQL Query & Agregate Function Arif Basofi Topik Sintaks Dasar SQL Query Operasi Aritmatika dalam SQL SQL Fungsi Agregate dan Group SQL Joint Table S Q L - Pendahuluan Bahasa user yang meminta

Lebih terperinci

SUBQUERY-2. MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA

SUBQUERY-2. MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA SUBQUERY-2 MI2154 SQL LANJUT Dedy Rahman Wijaya, S.T., M.T., OCA dedyrw@tass.telkomuniversity.ac.id Sasaran Pembelajaran Mampu menulis multiple-column subquery Mampu menyelesaikan kasus menggunakan correlated

Lebih terperinci

Perkenalan SQL. Ada empat macam tipe database yaitu hirarki, jaringan, relasional, dan objek.

Perkenalan SQL. Ada empat macam tipe database yaitu hirarki, jaringan, relasional, dan objek. Perkenalan SQL Sebuah database adalah sekumpulan informasi yang disusun dengan baik. Untuk mengatur sebuah database, dibutuhkan sebuah Database Management System (DBMS). DBMS merupakan program untuk menyimpan,

Lebih terperinci

Arsitektur Basis Data Oracle

Arsitektur Basis Data Oracle Arsitektur Basis Data Oracle Oracle pertama kali dicetuskan oleh Larry Elisson beserta dua temannya pada tahun 1977. Nama Oracle diambil dari proyek milik CIA di mana dia sebelumnya bekerja. (Wikipedia)

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 18 : SubQuery Lanjutan Halaman

Lebih terperinci

Bab 3. Query Lanjutan POKOK BAHASAN: TUJUAN BELAJAR:

Bab 3. Query Lanjutan POKOK BAHASAN: TUJUAN BELAJAR: Bab 3 Query Lanjutan POKOK BAHASAN: Subquery dan penggunaannya Subquery dengan banyak kolom Pairwise Comparison SubQuery NonPairwise Comparison SubQuery Penggunaan Query dalam Klausa FROM Ekspresi Scalar

Lebih terperinci

IKG2I4 / Software Project I

IKG2I4 / Software Project I IKG2I4 / Software Project I Mahmud Imrona, M.T. Izzatul Ummah, M.T. Kelompok Keahlian Algoritma dan Komputasi LECTURE NOTE WEEK 9 1 3/11/2015 WEEK 9 Entity Relationship Diagram (ERD) Primary key Foreign

Lebih terperinci

Sub Query. Rosa Ariani Sukamto Blog: Website:

Sub Query. Rosa Ariani Sukamto   Blog:  Website: Sub Query Rosa Ariani Sukamto Email: rosa_if_itb_01@yahoo.com Blog: http://udinrosa.wordpress.com Website: http://www.gangsir.com Apaan Ya???? Query di dalam query Subquery diletakkan pada klausa WHERE

Lebih terperinci

Esson Sihombing, S.Kom. Lab. Basisdata 1 Sistem Informasi UNIKOM 2013

Esson Sihombing, S.Kom. Lab. Basisdata 1 Sistem Informasi UNIKOM 2013 Esson Sihombing, S.Kom. Lab. Basisdata 1 Sistem Informasi UNIKOM 2013 PRACTICE 1 1. Initiate an isql*plus session using the user ID and password that are provided by the instructor (pada pengerjaan tugas

Lebih terperinci

Menampilkan Data Dari Beberapa Tabel

Menampilkan Data Dari Beberapa Tabel 5 Menampilkan Data Dari Beberapa Tabel Tujuan Setelah menyelesaikan pelajaran ini, Anda akan bisa melakukan sebagai berikut : Menulis pernyataan pernyataan SELECT untuk mengakses data dari beberapa tabel

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 7 : Perbaikan dengan Klausa

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 6 : Aggregate Data dg Fungsi

Lebih terperinci

15-Jan DATABASE - MySQL. Database. Constraints. Tujuan: Memahami perintah-perintah dasar DDL dan DML

15-Jan DATABASE - MySQL. Database. Constraints. Tujuan: Memahami perintah-perintah dasar DDL dan DML Objectives Tujuan: DATABASE - MySQL Memahami perintah-perintah dasar DDL dan DML Acep Irham Gufroni, M.Eng. Pemrograman Internet Teknik Informatika Univ. Siliwangi Database Constraints Database a collection

Lebih terperinci

PERTEMUAN 5 PENGGUNAAN FUNGSI GROUP

PERTEMUAN 5 PENGGUNAAN FUNGSI GROUP PERTEMUAN 5 PENGGUNAAN FUNGSI GROUP Tujuan Pembelajaran : Mengidentifikasi Fungsi Group yang tersedia Menggambarkan Penggunaan dari Fungsi Group Mengelompokkan data dengan Klausa GROUP BY Meng-include

Lebih terperinci

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc.

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc. DATABASE - MySQL Muhammad Zen S. Hadi, ST. MSc. Objectives Tujuan: Memahami perintah-perintah dasar DDL dan DML Contents Database DBMS Relational model SQL MySQL MySQL yang support ke relational model

Lebih terperinci

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015 C H A P T E R 15 SQL Operasi DML Arif Basofi PENS 2015 Objectives Tujuan: Mengenal operasi perintah SQL dalam: - DML (Data Manipulation Language) [1] - DDL (Data Definition Language) [2] S Q L DML DML

Lebih terperinci

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS C H A P T E R 15 SQL Operasi DML Objectives Tujuan: Mengenal operasi perintah SQL dalam: - DML (Data Manipulation Language) - DDL (Data Definition Language) S Q L DML DML (Data Manipulation Language) adalah

Lebih terperinci

Fungsi Single-Row. Fungsi merupakan fitur paling dibutuhkan dari SQL yang dapat digunakan untuk:

Fungsi Single-Row. Fungsi merupakan fitur paling dibutuhkan dari SQL yang dapat digunakan untuk: Fungsi Single-Row Fungsi SQL Fungsi merupakan fitur paling dibutuhkan dari SQL yang dapat digunakan untuk: - Melakukan kalkulasi pada data - Memodifikasi item data secara individual - Memanipulasi output

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya. BAB 12 : Pembuatan View Halaman

Lebih terperinci

S Q L. Sejarah SQL. Penulisan Perintah SQL. SQL (Structure Query Language)

S Q L. Sejarah SQL. Penulisan Perintah SQL. SQL (Structure Query Language) SQL (Structure Query Language) S Q L SQL merupakan transform-oriented language dengan 2 komponen utama: DDL & DML Mendefinisikan bahasa yang disebut Structured English Query Language (SEQUEL) Standar ISO

Lebih terperinci

Fungsi Single-Row. Fungsi merupakan fitur paling dibutuhkan dari SQL yang dapat digunakan untuk:

Fungsi Single-Row. Fungsi merupakan fitur paling dibutuhkan dari SQL yang dapat digunakan untuk: Fungsi Single-Row Fungsi SQL Fungsi merupakan fitur paling dibutuhkan dari SQL yang dapat digunakan untuk: - Melakukan kalkulasi pada data - Memodifikasi item data secara individual - Memanipulasi output

Lebih terperinci

Melaporkan Data Agreget Menggunakan Group Functions

Melaporkan Data Agreget Menggunakan Group Functions 4 Melaporkan Data Agreget Menggunakan Group Functions Tujuan Setelah menyelesaikan pelajaran ini, Anda akan dapat melakukan hal hal berikut ini : Mengenali Group functions yang ada Menjelaskan kegunaan

Lebih terperinci

BAB 4 : Interaksi PL/SQL dengan Oracle Server

BAB 4 : Interaksi PL/SQL dengan Oracle Server Oracle9i : Program with PLSQL BAB 4 : Interaksi PLSQL dengan Oracle Server BAB 4 : Interaksi PLSQL dengan Oracle Server Tujuan Pembelajaran : Membuat SELECT Statement dalam PLSQL Membuat DML (Data Manipulation

Lebih terperinci

Apa yang akan dibahas? Pengertian SQL Penggolongan Statement SQL Aturan Gramatika SQL Struktur Dasar SQL Query Satu (1) Tabel

Apa yang akan dibahas? Pengertian SQL Penggolongan Statement SQL Aturan Gramatika SQL Struktur Dasar SQL Query Satu (1) Tabel Sistem Basis Data 1 Apa yang akan dibahas? Pengertian SQL Penggolongan Statement SQL Aturan Gramatika SQL Struktur Dasar SQL Query Satu (1) Tabel 2 SQL SQL (Structured Query Language) Bahasa standar yang

Lebih terperinci

PERINTAH SQL DAN INTERKONEKSI PHP-MySQL

PERINTAH SQL DAN INTERKONEKSI PHP-MySQL PERINTAH SQL DAN INTERKONEKSI PHP-MySQL Muhammad Zen Samsono Hadi, ST. MSc. zenhadi@eepis-its.edu PRODI TEKNIK TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA 1 Konsep Dasar SQL Query 2 Bentuk SQL

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 9 : Manipulasi Data Halaman

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya Halaman : 8-0 BAB 8 : Menghasilkan

Lebih terperinci

PERTEMUAN 10. SQL : Data Manipulation (Chap. 6 Conoly)

PERTEMUAN 10. SQL : Data Manipulation (Chap. 6 Conoly) PERTEMUAN 10 SQL : Data Manipulation (Chap. 6 Conoly) TUJUAN DAN PENTINGNYA SQL SQL adalah sebuah bahasa yang dipergunakan untuk mengakses data dalam basis data relasional. SQL adalah sebuah bahasa permintaan

Lebih terperinci

MENAMPILKAN DATA DARI BANYAK TABEL

MENAMPILKAN DATA DARI BANYAK TABEL BAB 5 MENAMPILKAN DATA DARI BANYAK TABEL TUJUAN BELAJAR: Dapat menulis statement SELECT yang mengakses data ke lebih dari satu tabel dengan menggunakan operator JOIN. Menampilkan data yang tidak memenuhi

Lebih terperinci

Praktikum Basis Data 13 Structure Query Language 1

Praktikum Basis Data 13 Structure Query Language 1 Praktikum Basis Data 13 Structure Query Language 1 Pokok Bahasan : - Perintah SELECT tanpa kriteria - Perintah SELECT dengan kriteria - Perintah SELECT untuk relasi table - Klausa ORDER BY untuk pengurutan

Lebih terperinci

Menggunakan Subquery untuk Memecahkan Query Query

Menggunakan Subquery untuk Memecahkan Query Query 6 Menggunakan Subquery untuk Memecahkan Query Query Tujuan Setelah menyelesaikan pelajaran ini, Anda akan dapat melakukan hal hal berikut: Menentukan subquery subquery Menjelaskan tipe tipe dari persoalan

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya Oracle Academic Initiative Halaman

Lebih terperinci

RENCANA PEMBELAJARAN

RENCANA PEMBELAJARAN FRM/KUL/01/ Written by Checked by Approved by valid date Leon Andretti Abdillah, S.Kom.,MM Merry Agustina, M.M.,M.Kom M.Izman Herdiansyah, ST., MM., Ph.D Mata Kuliah : Praktikum Basis Data Semester :1

Lebih terperinci

Tugas 7 Basis Data. Teori & Praktek Instalasi SQL Server disusun oleh : MUSLIM TAGOR NABABAN TI 1B. Jurusan Teknik Informatika

Tugas 7 Basis Data. Teori & Praktek Instalasi SQL Server disusun oleh : MUSLIM TAGOR NABABAN TI 1B. Jurusan Teknik Informatika Tugas 7 Basis Data Teori & Praktek Instalasi SQL Server 2000 disusun oleh : MUSLIM TAGOR NABABAN 1083058 TI 1B Jurusan Teknik Informatika Politeknik Pos Indonesia Bandung 2009 Exercise From the above scheme

Lebih terperinci

MODUL IV FUNGSI AGREGAT

MODUL IV FUNGSI AGREGAT MODUL IV FUNGSI AGREGAT A. TUJUAN Memahami fungsi-fungsi agregat dan penggunaannya. Memahami operasi pengelompokan data. Mampu menyelesaikan kasus-kasus yang melibatkan penggunaan fungsifungsi agregat.

Lebih terperinci

MODUL 3 PENGELOMPOKAN, PENGURUTAN, KRITERIA DATA, AGREGASI

MODUL 3 PENGELOMPOKAN, PENGURUTAN, KRITERIA DATA, AGREGASI MODUL 3 PENGELOMPOKAN, PENGURUTAN, KRITERIA DATA, AGREGASI TUJUAN PRAKTIKUM 1. Praktikan mampu memahami statement SQL untuk pengelompokan data 2. Praktikan mampu memahami statement SQL untuk pengurutan

Lebih terperinci

Basis Data I. Pertemuan Ke-11 (SQL Part 2) Noor Ifada.

Basis Data I. Pertemuan Ke-11 (SQL Part 2) Noor Ifada. Basis Data I Pertemuan Ke-11 (SQL Part 2) Noor Ifada noor.ifada@if.trunojoyo.ac.id 1 Sub Pokok Bahasan Operator Is Null Operator Between Operator In Operator Like Distinct Fungsi dalam Select: Count, Max,

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 11 : Constraint Halaman : 11-0

Lebih terperinci

Rencana Pelaksanaan Pembelajaran

Rencana Pelaksanaan Pembelajaran : Basis Data PROGRAM STUDI : Teknik Informatika PERTEMUAN : 1 Kompetensi Dasar : Mahasiswa dapat melakukan instalasi MySQL (XAMPP) serta melakukan konfigurasi user 1. Mahasiswa mampu melakukan instalasi

Lebih terperinci

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini:

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini: JOIN Dalam menampilkan sebuah data seringkali kita perlu menggunakan lebih dari 1 tabel, 2 tabel, bahkan lebih, karena data yang akan ditampilkan terletak pada beberapa tabel. Setiap tabel biasanya memiliki

Lebih terperinci

Tutorial Database Oracle Chapter3 Menampilkan Data Menggunakan Perintah SQL SELECT

Tutorial Database Oracle Chapter3 Menampilkan Data Menggunakan Perintah SQL SELECT Tutorial Database Oracle Chapter3 Menampilkan Data Menggunakan Perintah SQL SELECT Oleh: Ardie Jocong Pada Tutorial ketiga ini, saya akan memberikan tutorial bagaimana Menampilkan data yang telah dibuat

Lebih terperinci

Menggunakan Set Operators

Menggunakan Set Operators 7 Menggunakan Set Operators Tujuan Setelah menyelesaikan pelajaran ini, Anda akan dapat melakukan berikut ini : Menjelaskan set operators Menggunakan suatu set operator untuk mengkombinasikan beberapa

Lebih terperinci

BAB 2 LANDASAN TEORI Pengertian DBMS (Database Management System)

BAB 2 LANDASAN TEORI Pengertian DBMS (Database Management System) 21 BAB 2 LANDASAN TEORI 2.1. Pengertian DBMS (Database Management System) Database Management System atau DBMS adalah perangkat lunak yang didesain untuk membantu dalam memelihara dan menggunakan koleksi

Lebih terperinci

PRAKTIKUM 4 PENGAMBILAN DATA LANJUT

PRAKTIKUM 4 PENGAMBILAN DATA LANJUT PRAKTIKUM 4 PENGAMBILAN DATA LANJUT Pendahuluan Kebutuhan pengambilan data seringkali tidak hanya menampilkan field-field yang terdapat pada sebuah tabel. Adakalanya dibutuhkan kalkulasi dari field-field

Lebih terperinci

PERTEMUAN 6 SUBQUERY

PERTEMUAN 6 SUBQUERY PERTEMUAN 6 SUBQUERY Tujuan Pembelajaran : Menggambarkan tipe persoalan yang dapat dipecahkan oleh sub query Mendefinisikan sub query Memahami tipe-tipe dari subquery Menulis subquery baris tunggal dan

Lebih terperinci

SQL (STRUCTURED QUERY LANGUAGE)

SQL (STRUCTURED QUERY LANGUAGE) SQL (STRUCTURED QUERY LANGUAGE) 1. Jenis-jenis deklarasi SQL Deklarasi atau perintah SQL dibagi menjadi DDL, dan DML berdasarkan kepada fungsinya. a. DDL (Data Definition Language) Merupakan perintah-perintah

Lebih terperinci

STRUCTURE QUERY LANGUAGE DDL & DML

STRUCTURE QUERY LANGUAGE DDL & DML STRUCTURE QUERY LANGUAGE DDL & DML OUTLINE Data Definiton Language (DDL) Data Manipulation Language (DML) Data Control Language (DCL) Proses Pembangunan Database Perintah SQL DATA DEFINITION LANGUAGE (DDL)

Lebih terperinci

SISTEM INFORMASI Marta Lenah Haryan8 Copyright Wondershare So3ware

SISTEM INFORMASI Marta Lenah Haryan8 Copyright Wondershare So3ware SISTEM INFORMASI Marta Lenah Haryan8 Group By Merupakan syntak MySQL yang digunakan untuk menggelompokkan data berdasarkan field yang terdapat dalam tabel. SELECT [nama_field1], [nama_field2], [nama_field3]

Lebih terperinci

Pertemuan 10 Structure Query Language(SQL)

Pertemuan 10 Structure Query Language(SQL) Pertemuan 10 Structure Query Language(SQL) INDIKATOR 1. Mengenal perintah dasar SQL (SELECT,FROM,WHERE) 2. Menggunakan SELECT dan FROM dalam satu tabel 3. Menggunakan asterisk(*) 4. Menggunakan nama lain

Lebih terperinci

Modul Praktikum II Matakuliah Basis Data 2

Modul Praktikum II Matakuliah Basis Data 2 A. TUJUAN Modul Praktikum II Matakuliah Basis Data 2 Fungsi Agregat pada MySQL Mahasiswa mampu menggunakan fungsi COUNT untuk menghitung banyaknya data dari hasil suatu query di dalam basis data Mahasiswa

Lebih terperinci

BAB 1 PEMBUATAN REPORT

BAB 1 PEMBUATAN REPORT BAB 1 PEMBUATAN REPORT Pada bab ini akan dibahas cara pembuatan Report pada Oracle. Oracle Report Builder memungkinkan developer untuk membuat report dalam berbagai macam layout dan berisi banyak fitur

Lebih terperinci

Strctured Query Language BASIS DATA

Strctured Query Language BASIS DATA Strctured Query Language BASIS DATA WHERE Klausa ini biasanya digunakan untuk: 1. Filter (penyaringan) data. 2. Merelasikan/menghubungkan query yang disusun lebih dari satu tabel. Penerapannya adalah dengan

Lebih terperinci

Bab 5. Database Trigger POKOK BAHASAN: TUJUAN BELAJAR: 5.1. PENDAHULUAN

Bab 5. Database Trigger POKOK BAHASAN: TUJUAN BELAJAR: 5.1. PENDAHULUAN Bab 5 Database Trigger POKOK BAHASAN: Pembuatan dan Penggunaan Trigger Statement trigger Row Trigger Menggunakan Old dan New Qualifiers Klausa WHEN pada trigger Perintah-perintah umum pada Trigger TUJUAN

Lebih terperinci

TUTORIAL. Mencari nilai Max dan Min

TUTORIAL. Mencari nilai Max dan Min TUTORIAL Mencari nilai Max dan Min Aggregasi data dengan Group Function (GROUP BY, ROLLUP dan CUBE) Group function merupakan fungsi yang akan akan memproses banyak data dan menghasilkan satu atau beberapa

Lebih terperinci

MODUL 8. Sub Query Pada baris dan Kolom PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

MODUL 8. Sub Query Pada baris dan Kolom PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE MODUL 8 Sub Query Pada baris dan Kolom PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE BAGIAN 1 SUB QUERY PADA BARIS Tujuan Pembelajaran : Menggambarkan tipe persoalan yang

Lebih terperinci

Basis Data 1. Dasar SQL Query. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS

Basis Data 1. Dasar SQL Query. Arif Basofi, S.Kom. MT. Teknik Informatika, PENS Basis Data 1 Dasar SQL Query Arif Basofi, S.Kom. MT. Teknik Informatika, PENS Tujuan Mengenal dan Memahami Struktur Dasar Perintah- Perintah SQL Query Database 2 SQL - Pendahuluan Bahasa user yang meminta

Lebih terperinci

TABLE JOIN SQL SERVER 2005

TABLE JOIN SQL SERVER 2005 i TABLE JOIN SQL SERVER 2005 Disusun untuk : Membuat Laporan Table Join SQL SERVER 2005 Oleh : CHOIRUL FADHOLANII NIM : 0931140068 POLITEKNIK NEGERI MALANG Tahun 2011 DAFTAR ISI 1 DAFTAR GAMBAR 2 1 1.

Lebih terperinci

SQL LANJUT BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

SQL LANJUT BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs. SQL LANJUT BASIS DATA Rajif Agung Yunmar, S.Kom., M.Cs. PRE TEST Sebutkan 4 jenis perintah pengolahan data dengan SQL. Jelaskan! Jelaskan apa yang disebut dengan operator perbandingan. Berikan contohnya.

Lebih terperinci

MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

MODUL 4. Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE MODUL 4 Query SELECT dan DML (INSERT, UPDATE, DELETE) PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE BAGIAN 1 QUERY SELECT Tujuan Pembelajaran : Mengetahui kemampuan dari

Lebih terperinci

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS Copyright 2005 PENS-ITS C H A P T E R Operasi DML Objectives Tujuan: Mengenal operasi perintah dalam: - DML (Data Manipulation Language) S Q L DML DML (Data Manipulation Language) adalah inti dari. DML

Lebih terperinci

Macam - Macam Perintah Pada SQL

Macam - Macam Perintah Pada SQL Macam - Macam Perintah Pada SQL Secara umum SQL hanya memiliki 3 komponen penting, yang digunakan untuk mendefinisikan, memanipulasi serta sebagai pengontrol data yang ada pada sebuah database. Komponen

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 7 : Subquery Halaman : 7-0

Lebih terperinci

Database Systems: Lab. Actvity 3: Fungsi-Fungsi MySql Advance. Pendahuluan. Pendahuluan

Database Systems: Lab. Actvity 3: Fungsi-Fungsi MySql Advance. Pendahuluan. Pendahuluan 1 Database Systems: Lab. Actvity 3: Fungsi-Fungsi MySql Advance Agenda. Pendahuluan Fungsi Having Fungsi SubSelect 2 Pendahuluan Pendahuluan Merealisasikan pemodelan data konseptual menggunakan tipe tabel

Lebih terperinci

Oracle Academic Initiative

Oracle Academic Initiative Oracle Academic Initiative Oracle9i Introduction to SQL Oleh: Tessy Badriyah, SKom.MT Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya BAB 10 : Pembuatan & Pengelolaan

Lebih terperinci

Tutorial Database Oracle Chapter4 Pembatasan dan Pengurutan

Tutorial Database Oracle Chapter4 Pembatasan dan Pengurutan Tutorial Database Oracle Chapter4 Pembatasan dan Pengurutan Oleh: Ardie Jocong Pada Tutorial Database Oracle Chapter4 ini, saya akan Memberikan sedikit ilmu Bagaimana Melakukan Pembatasan dan Pengurutan

Lebih terperinci

Basis Data. Bagian IV SQL (2) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

Basis Data. Bagian IV SQL (2) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan Basis Data Bagian IV SQL (2) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan Fungsi Agregasi Fungsi agregasi digunakan untuk melakukan operasi pada kelompok-kelompok baris data. Fungsi ini

Lebih terperinci

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DDL. Copyright 2005 PENS-ITS

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DDL. Copyright 2005 PENS-ITS C H A P T E R 16 SQL Operasi DDL Objectives Tujuan: Mengenal operasi perintah SQL dalam: - DDL (Data Definition Language) S Q L DDL Data Definition Language (DDL) Digunakan dalam membuat tabel baru, indeks,

Lebih terperinci

Apakah SQL? Membuat basis data dan struktur tabel Input, update, dan delete data dari tabel Membuat query sederhana dan kompleks SQL

Apakah SQL? Membuat basis data dan struktur tabel Input, update, dan delete data dari tabel Membuat query sederhana dan kompleks SQL SQL Basis Data 1 Apakah SQL? SQl singkatan dari Structured Query Language yang merupakan bahasa komputer standar ANSI (American National Standards Institute). Dengan SQL kita dapat Membuat basis data dan

Lebih terperinci

Untuk menampilkan data-data yang telah tersimpan dalam database diperlukan perintah SELECT, yang dapat dirumuskan sebagai berikut:

Untuk menampilkan data-data yang telah tersimpan dalam database diperlukan perintah SELECT, yang dapat dirumuskan sebagai berikut: MODUL 1 SQL Single Table Query Untuk menampilkan data-data yang telah tersimpan dalam database diperlukan perintah SELECT, yang dapat dirumuskan sebagai berikut: SELECT [DISTINCT *] FROM

Lebih terperinci

MODUL V DATA MANIPULATION LANGUAGE (DML) 1

MODUL V DATA MANIPULATION LANGUAGE (DML) 1 MODUL V DATA MANIPULATION LANGUAGE (DML) 1 Tujuan : Praktikan dapat memahami dan mengisi tabel dalam database Praktikan dapat memahami dan memanipulasi data dalam database Tugas Pendahuluan Apa yang anda

Lebih terperinci

B a s i s D a t a C H A P T E R. SQL Operasi DDL. Arif Basofi PENS 2015

B a s i s D a t a C H A P T E R. SQL Operasi DDL. Arif Basofi PENS 2015 C H A P T E R 16 SQL Operasi DDL Arif Basofi PENS 2015 Objectives Tujuan: Mengenal operasi perintah SQL dalam: - DDL (Data Definition Language) S Q L DDL Data Definition Language (DDL) Dengan perintah

Lebih terperinci

Dasar-dasar SQL Cosmas Haryawan Hal : 1/9 DASAR DASAR SQL (Structured Query Language) SQL adalah bahasa standar dalam basis data yang digunakan untuk melakukan manipulasi data. Standardisasi bahasa ini

Lebih terperinci

Basis Data II. Pertemuan Ke-7 (Union dan Join) Noor Ifada S1 T. Informatika - UTM (2012) 1

Basis Data II. Pertemuan Ke-7 (Union dan Join) Noor Ifada S1 T. Informatika - UTM (2012) 1 Basis Data II Pertemuan Ke-7 (Union dan Join) Noor Ifada noor.ifada@if.trunojoyo.ac.id S1 T. Informatika - UTM (2012) 1 Sub Pokok Bahasan OPERATOR UNION OPERATOR UNION ALL JOIN TYPE: INNER JOIN LEFT JOIN

Lebih terperinci

Join Oracle. Rosa Ariani Sukamto Blog: Website:

Join Oracle. Rosa Ariani Sukamto   Blog:  Website: Join Oracle Rosa Ariani Sukamto Email: rosa_if_itb_01@yahoo.com Blog: http://udinrosa.wordpress.com Website: Tentang Quis tabel mahasiswa nama varchar(255) npm varchar(20) alamat_rumah varchar(255) alamat_kos

Lebih terperinci

Pertemuan 11 Structure Query Language(SQL)

Pertemuan 11 Structure Query Language(SQL) Pertemuan 11 Structure Query Language(SQL) INDIKATOR 1. Perintah SELECT dari Banyak Tabel 2. Pengelompokkan Hasil Query dengan GROUP BY 3. HAVING 4. SubSELECT URAIAN MATERI Perintah SELECT dari Banyak

Lebih terperinci

M0564-Pengantar Sistem Basisdata 12/ 1

M0564-Pengantar Sistem Basisdata 12/ 1 M0564-Pengantar Sistem Basisdata 12/ 1 SQL : DML (Continue) Query Multi-Table Dapat menggunakan subqueri asalkan kolom yang dihasilkan berasal dari tabel yang sama. Jika kolom yang dihasilkan berasal dari

Lebih terperinci

Pemrograman Basis Data dan SQL Modul ke: Pemrograman PL/SQL

Pemrograman Basis Data dan SQL Modul ke: Pemrograman PL/SQL Pemrograman Basis Data dan SQL Modul ke: Pemrograman PL/SQL Fakultas FASILKOM Ir. Fajar Masya, MMSI Program Studi Sistem Informasi www.mercubuana.ac.id Fasilitas Dalam DML Run : menampilkan perintah SQL

Lebih terperinci

Basis Data. Bagian IV SQL (3) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

Basis Data. Bagian IV SQL (3) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan Basis Data Bagian IV SQL (3) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan Deletion Yang dapat dihapus (delete) hanyalah tuple bukan nilai ada suatu atribut tertentu. Dalam SQL, deletion

Lebih terperinci

Modul 3 : Query Penggabungan Tabel

Modul 3 : Query Penggabungan Tabel Modul 3 : Query Penggabungan Tabel Tujuan Praktikum - Mahasiswa dapat membedakan perbedaan macam-macam join tabel. - Mahasiswa mampu melakukan query untuk join tabel. - Mahasiswa dapat membedakan union,

Lebih terperinci

Berikut ini akan diberikan contoh-contoh penggunaan fungsi agregasi dalam klausa SQL: Contoh 1 Menampilkan banyaknya record dosen select count ( * )

Berikut ini akan diberikan contoh-contoh penggunaan fungsi agregasi dalam klausa SQL: Contoh 1 Menampilkan banyaknya record dosen select count ( * ) Modul 5 SQL 2 1.1 Tujuan a. Mahasiswa dapat mengenal Sintak SQL Lanj ut b. Mahasiswa dapat mengoperasikan Sintak SQL Lanjut 1.2 Materi a. SQL b. Tabel 1.3 Alat dan Bahan a. sqlyog b. XAMPP c. phpmyadmin

Lebih terperinci

Riyanto

Riyanto SQL (Structured Query Language) Riyanto mohriyan@gmail.com http://www.masto.co.cc Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan

Lebih terperinci

CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number));

CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number)); Five types of constraints exist within an Oracle database. Each type enforces a different rule. The types are: NOT NULL constraints UNIQUE constraints PRIMARY KEY constraints FOREIGN KEY constraints CHECK

Lebih terperinci

Pertemuan 11. Bahasa Query Terapan Lanjutan

Pertemuan 11. Bahasa Query Terapan Lanjutan Pertemuan 11 Bahasa Query Terapan Lanjutan JOIN JOIN digunakan untuk memilih data dari dua tabel atau lebih. 1. INNER JOIN Menggabungkan dua tabel dimana diantara dua tabel datanya bersesuaian. 2. LEFT

Lebih terperinci

BAB 11 FUNGSI-FUNGSI SQL SERVER

BAB 11 FUNGSI-FUNGSI SQL SERVER BAB 11 FUNGSI-FUNGSI SQL SERVER 11.1. Fungsi String SQL Server menyediakan fungsi-fungsi String yang dapat digunakan sebagai bagian dari ekspresi karakter manapun. Fungsi ini digunakan untuk bermacammacam

Lebih terperinci

SQL Data Definition Language (DDL)

SQL Data Definition Language (DDL) Structured Query Language - DML (Pert. 12) Oleh : Umi Laili Yuhana, S.Kom, M.Sc. Sarwosri, S.Kom, M.T. Dr. Ir. Siti Rochimah 1 SQL Data Definition Language (DDL) Perintah DDL dalam SQL meliputi : CREATE

Lebih terperinci

Structured Query Language

Structured Query Language Structured Query Language DML (Data Manipulation Language) 31 Mei 2006 2006, M. Ramadhan 1 Pendahuluan Yang akan dibahas: Data Manipulation Language (DML) Pernyataan SQL untuk: Menemukan kembali data dalam

Lebih terperinci

Sistem Basis Data; Tutorial Konseptual Oleh : Yakub

Sistem Basis Data; Tutorial Konseptual Oleh : Yakub Sistem Basis Data; Tutorial Konseptual Oleh : Yakub Edisi Pertama Cetakan Pertama, 2008 Hak Cipta 2008 pada penulis, Hak Cipta dilindungi undang-undang. Dilarang memperbanyak atau memindahkan sebagian

Lebih terperinci

HANDOUT BASIS DATA LANJUT

HANDOUT BASIS DATA LANJUT HANDOUT BASIS DATA LANJUT Genap 2009/2010 Fakultas Teknik Program Studi SISTEM INFORMASI (S1) Universitas Kristen Duta Wacana ( U.K.D.W. ) Disusun Oleh: Yetli Oslan, S.Kom., M.T. Universitas Kristen Duta

Lebih terperinci

PRAKTIKUM 8 SINGLE ROW & GROUP FUNCTION

PRAKTIKUM 8 SINGLE ROW & GROUP FUNCTION PRAKTIKUM 8 SINGLE ROW & GROUP FUNCTION Langkah langkah melakukan praktikum 8: a. Jalankan Oracle 10g caranya : All program Oracle OraDb10g_home1 Application Development SQL Plus b. Masukkan username :

Lebih terperinci

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG M O D U L S Q L SISTEM BASIS DATA 2 Disusun oleh : Siti Yuliyanti, ST SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG Jl. Brigjen Katamso No.92 Km 2.5 Tanjungpinang Kepulauan Riau November 24, 2010 SQL

Lebih terperinci

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL)

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL) STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL) A. Pengenalan SQL SQL pertama kali diterapkan pada sistem R (sebuah proyek riset pada laboratorium riset San Jose, IBM). Kini SQL juga dijumpai

Lebih terperinci

BASIS DATA I/2009-GENAP ALJABAR RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2009-GENAP 1

BASIS DATA I/2009-GENAP ALJABAR RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2009-GENAP 1 BASIS DATA I/2009-GENAP ALJABAR RELASIONAL Oleh Team Teaching Database 1 Aljabar Relational Yaitu sekumpulan operasi yang digunakan untuk melakukan proses manipulasi data dalam rangka untuk mendapatkan

Lebih terperinci

PERTEMUAN 11 SQL(lanjutan): Queries, Constraints & Triggers. (Chap. 5 Ramakrishnan)

PERTEMUAN 11 SQL(lanjutan): Queries, Constraints & Triggers. (Chap. 5 Ramakrishnan) PERTEMUAN 11 SQL(lanjutan): Queries, Constraints & Triggers (Chap. 5 Ramakrishnan) Overview Structure Query Language (SQL) adalah bahasa database relasional komersial yang paling banyak digunakan. SQL

Lebih terperinci

Database Interfaces. By: Arif Basofi

Database Interfaces. By: Arif Basofi Database Interfaces By: Arif Basofi Tujuan Menggunakan SQL*Plus dan isql*plus untuk mengakses Database Oracle 10g Menjelaskan struktur logika dari sebuah table Menggunakan SQL untuk melakukan query, memanipulasi

Lebih terperinci

Gambar Desain Form Program Aplikasi. Tabel Mengganti Properti Objek

Gambar Desain Form Program Aplikasi. Tabel Mengganti Properti Objek 13.1. Pernyataan SQL Ada empat buah pernyataan SQL yaitu SELECT, UPDATE, DELETE, INSERT. Perintah Select adalah perintah SQL yang sering digunakan, perintah ini akan memberikan intruksi pada engine SQL

Lebih terperinci