PostgreSQL adalah sistem database relasional objek sumber terbuka dengan lebih dari 30 tahun pengembangan aktif di industri ini. Dalam artikel Tutorial PostgreSQL Untuk Pemula ini, saya akan memperkenalkan Anda pada berbagai konsep database dan perintah yang digunakan dalam PostgreSQL.
Topik yang dibahas dalam artikel ini terutama dibagi menjadi 4 kategori:DDL, DML, DCL &TCL.
- DDL (Data Definition Language) perintah yang digunakan untuk mendefinisikan database. Contoh:CREATE, DROP, ALTER, TRUNCATE, COMMENT, RENAME.
- DML (Data Manipulation Language) perintah berurusan dengan manipulasi data yang ada dalam database. Contoh:PILIH, MASUKKAN, PERBARUI, HAPUS.
- DCL Perintah (Bahasa Kontrol Data) berurusan dengan izin, hak, dan kontrol lain dari sistem basis data. Contoh:HIBAH, INVOKE.
- TCL Perintah (Transaction Control Language) menangani transaksi database. Contoh:BEGIN, COMMIT, ROLLBACK.
Selain perintah, topik berikut akan dibahas dalam artikel ini:
- Apa itu PostgreSQL?
- Instal PostgreSQL di Windows
- Berbagai Jenis Kunci Dalam Basis Data
- Kendala yang Digunakan Dalam Basis Data
- Operator
- Fungsi Agregat
- Setel Operasi
- Kueri Bertingkat
- Bergabung
- Tampilan
- Prosedur Tersimpan
- Pemicu
- Jenis Data UUID
Apa itu PostgreSQL? – Tutorial PostgreSQL
PostgreSQL adalah sistem database relasional objek yang memperluas dan menggunakan bahasa SQL. Ini berasal dari tahun 1986 dan telah menjadi pengembangan aktif selama lebih dari 30 tahun.
Fitur PostgreSQL adalah sebagai berikut:
- Tipe Data: PostgreSQL mendukung berbagai jenis tipe data seperti primitif, terstruktur, dokumen, geometri dan kustomisasi. Ini membantu pengguna untuk menyimpan data dalam format apa pun.
- Integritas Data: Dengan bantuan berbagai batasan dan kunci dalam database, PostgreSQL memastikan bahwa integritas data terpenuhi untuk database yang sederhana hingga yang kompleks.
- Kinerja: PostgreSQL menyediakan fitur seperti pengindeksan, kontrol konkurensi multi-versi, komplikasi ekspresi JIT untuk memastikan konkurensi dan kinerja tetap sesuai standar.
- Keandalan: Dengan bantuan Write Ahead Logging(WAL) dan Replication, PostgreSQL telah membuktikan dirinya sebagai salah satu sistem database paling andal selama beberapa waktu.
- Keamanan: PostgreSQL menyediakan mekanisme yang kuat seperti otentikasi, sistem kontrol akses yang kuat untuk memastikan bahwa hanya pengguna yang berwenang yang memiliki akses ke database.
- Ekstensibilitas: PostgreSQL hadir dengan berbagai ekstensi untuk menyediakan fungsionalitas tambahan. Itu juga telah meningkatkan fitur ekstensibilitasnya dengan fungsi tersimpan, bahasa prosedural, dan pembungkus data asing.
Sekarang, setelah Anda mengetahui apa itu PostgreSQL, mari kita mulai dengan menginstal PostgreSQL di Windows.
Menginstal PostgreSQL di Windows – Tutorial PostgreSQL
Untuk menginstal PostgreSQL di Windows, Anda harus mengikuti langkah-langkah di bawah ini:
Langkah 1: Buka situs web resmi PostgreSQL lalu pilih sistem operasi yang ingin Anda unduh. Di sini saya akan memilih Windows.
Langkah 2: Setelah sistem operasi dipilih, Anda akan diarahkan ke halaman, di mana Anda harus mengunduh penginstal. Untuk melakukannya, klik opsi:Unduh penginstal. Lihat di bawah.
Langkah 3: Kemudian, Anda akan diarahkan lebih jauh ke halaman, di mana Anda harus memilih versi penginstal berdasarkan Sistem Operasi . Di sini, saya akan memilih versi 11.4 untuk Windows 64 bit. Lihat di bawah.
Sekali, Anda menekan Unduh , Anda akan secara otomatis melihat bahwa PostgreSQL sedang diunduh.
Langkah 4: Sekarang, setelah file diunduh, klik dua kali pada file untuk membukanya dan wizard akan muncul di layar Anda seperti di bawah ini. Klik Berikutnya dan lanjutkan lebih jauh.
Langkah 4.1: Sekarang, tentukan Direktori Instalasi . Di sini, saya akan membiarkannya apa adanya, dan klik Berikutnya seperti di bawah ini.
Langkah 4.2: Sekarang, pilih komponen yang ingin Anda pasang lalu klik Berikutnya . Di sini, saya memilih semua komponen.
Langkah 4.3: Selanjutnya, pilih direktori tempat Anda ingin menyimpan data . Di sini saya akan membiarkannya apa adanya. Kemudian, klik Berikutnya.
Langkah 4.4: Di kotak dialog berikutnya, yang muncul, Anda harus menyebutkan kata sandi untuk pengguna super. Kemudian, klik Berikutnya.
Langkah 4.5: Selanjutnya, Anda harus memilih nomor port di mana server harus mendengarkan. Di sini, saya akan membiarkannya apa adanya lalu klik Berikutnya.
Langkah 4.6: Terakhir, pilih lokal untuk digunakan oleh cluster database baru. Saya akan membiarkannya apa adanya lalu klik Berikutnya .
Langkah 4.7: Terakhir klik Berikutnya di wizard yang datang untuk memulai instalasi PostgreSQL di komputer Anda.
Setelah instalasi selesai, Anda akan melihat kotak dialog seperti di bawah ini di layar Anda. Klik Selesai.
Langkah 5: Sekarang, Anda harus menghubungkan server ke database . Untuk melakukannya buka pgadmin yang merupakan GUI resmi PostgreSQL . Setelah Anda membuka pgadmin, Anda akan melihat kotak dialog yang menanyakan kata sandi Anda. Jadi, sebutkan sandinya, dan klik OK.
Sekarang, setelah Anda menginstal PostgreSQL, mari kita mulai dengan perintah yang digunakan di PostgreSQL.
Pada artikel Tutorial PostgreSQL Untuk Pemula ini, saya akan mempertimbangkan database di bawah ini sebagai contoh, untuk menunjukkan cara menulis perintah.
TeacherID | NamaGuru | Alamat | Kota | Kode Pos | Negara | Gaji |
01 | Saurav | Jalan Gangnam | Seoul | 06499 | Korea Selatan | 42000 |
02 | Preeti | Queens Quay | Rio Claro | 560001 | Brasil | 45900 |
03 | Vinod | Jalan Raja | London | SW6 | Inggris Raya | 65000 |
04 | Akanksha | Jalan Mayo | Kolkata | 700069 | India | 23000 |
05 | Amit | Jalan MG | Bengaluru | 560001 | India | 30.000 |
Jadi, mari kita mulai sekarang!
Perintah Definisi Data (DDL) – Tutorial PostgreSQL
Bagian artikel ini terdiri dari perintah-perintah tersebut, yang dapat Anda tentukan databasenya. Perintahnya adalah:
- BUAT
- UBAH
- TURUN
- POTONGKAH
- GANTI NAMA
BUAT
Pernyataan ini digunakan untuk membuat skema, tabel, atau indeks.
Pernyataan ‘CREATE SCHEMA’
Pernyataan CREATE SCHEMA digunakan untuk membuat database atau yang paling umum dikenal sebagai skema.
Sintaks:
BUAT SCHEMA Schema_Name;
Contoh:
BUAT guru SKEMA;
Pernyataan ‘CREATE TABLE’
Pernyataan CREATE TABLE digunakan untuk membuat tabel baru dalam database.
Sintaks:
CREATE TABLE table_name ( tipe data kolom1, tipe data kolom2, tipe data kolom3, ....);
Contoh:
BUAT TABEL TeachersInfo(TeacherID int,TeacherName varchar(255),Alamat varchar(255),City varchar(255),PostalCode int,Country varchar(255),Gaji int);
ALTER
Pernyataan ini digunakan untuk menambah, mengubah, atau menghapus batasan atau kolom.
Pernyataan ‘ALTER TABLE’
Pernyataan ALTER TABLE digunakan untuk menambah, mengubah, atau menghapus batasan dan kolom dari tabel.
Sintaks:
ALTER TABLE table_nameADD column_name tipe data;
Contoh:
ALTER TABLE TeachersInfoADD DateOfBirth date;
DROP
Perintah ini digunakan untuk menghapus database, tabel, atau kolom.
Pernyataan 'DROP SCHEMA'
Pernyataan DROP SCHEMA digunakan untuk menghapus skema lengkap.
Sintaks:
DROP SCHEMA schema_name;
Contoh:
GANTI SKEMA guru;
Pernyataan 'DROP TABLE'
Pernyataan DROP TABLE digunakan untuk menghapus seluruh tabel dengan semua nilainya.
Sintaks:
DROP TABLE table_name;
Contoh:
DROP TABLE TeachersInfo;
TRUNCATE
Pernyataan TRUNCATE digunakan untuk menghapus data yang ada di dalam tabel, tetapi tabel tersebut tidak dihapus.
Sintaks:
TRUNCATE TABLE table_name;
Contoh:
TRUNCATE TABLE TeachersInfo;
GANTI NAMA
Pernyataan RENAME digunakan untuk mengganti nama satu atau lebih tabel atau kolom.
Sintaks:
ALTER TABLE table_name RENAME TO new_table_name; --Ganti Nama Tabel
ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name; -- Ganti Nama Nama Kolom
Contoh:
ALTER TABLEInfo Guru GANTI NAMA KE InfoGuru;ALTER TABLE InfoGuru GANTI NAMA KOLOM Tgl lahir MENJADI dob;
Sekarang, sebelum saya melangkah lebih jauh dalam artikel ini tentang Tutorial PostgreSQL Untuk Pemula, izinkan saya memberi tahu Anda berbagai jenis Kunci dan Batasan yang perlu Anda sebutkan saat memanipulasi database. Kunci dan batasan akan membantu Anda membuat tabel dengan cara yang jauh lebih baik, karena Anda dapat menghubungkan setiap tabel dengan tabel lainnya.
Berbagai Jenis Kunci Dalam Basis Data – Tutorial PostgreSQL
Terutama ada 5 jenis Kunci, yang dapat disebutkan dalam database.
- Kunci Kandidat – Candidate Key adalah kombinasi dari sekumpulan atribut minimal yang secara unik dapat mengidentifikasi sebuah tuple. Relasi apa pun dapat memiliki lebih dari satu Candidate Key, dengan key yang berupa simple key atau composite key.
- Kunci Super – Super Key adalah himpunan atribut yang secara unik dapat mengidentifikasi sebuah tuple. Jadi, Candidate Key adalah Super Key, tetapi tidak demikian sebaliknya.
- Kunci Utama – Primary Key adalah sekumpulan atribut yang dapat digunakan untuk mengidentifikasi setiap tuple secara unik. Jadi, jika ada 3-4 kunci kandidat yang ada dalam suatu hubungan, maka dari itu, satu dapat dipilih sebagai Kunci Utama.
- Kunci Alternatif – Semua Kunci Kandidat selain Kunci Utama disebut sebagai Kunci Alternatif.
- Kunci Asing – Atribut yang hanya dapat mengambil nilai yang ada sebagai nilai dari beberapa atribut lain, adalah kunci asing untuk atribut yang dirujuk.
Kendala yang Digunakan Dalam Basis Data – Tutorial PostgreSQL
Konstrain yang dapat Anda gunakan dalam database adalah sebagai berikut:
- BUKAN NULL – Batasan NOT NULL memastikan bahwa nilai NULL tidak dapat disimpan dalam kolom
- UNIK – Batasan UNIK memastikan bahwa semua nilai dalam kolom berbeda
- PERIKSA - Batasan CHECK memastikan bahwa semua nilai dalam kolom memenuhi kondisi tertentu.
- DEFAULT - Batasan DEFAULT terdiri dari sekumpulan nilai default untuk kolom saat tidak ada nilai yang ditentukan.
- INDEX – Batasan INDEX digunakan untuk membuat dan mengambil data dari database dengan sangat cepat
Sekarang, setelah Anda mengetahui perintah di DDL dan berbagai jenis kunci dan batasan, mari beralih ke bagian berikutnya yaitu Perintah Manipulasi Data.
Perintah Manipulasi Data (DML) – Tutorial PostgreSQL
Bagian artikel ini terdiri dari perintah-perintah yang dapat digunakan untuk memanipulasi database Anda. Perintahnya adalah:
- SETEL SEARCH_PATH
- MASUKKAN
- PERBARUI
- HAPUS
- PILIH
Selain dari perintah ini, ada juga operator/fungsi manipulatif lainnya seperti:
- Operator Aritmatika, Bitwise, Senyawa, dan Perbandingan
- Operator Logika
- Fungsi Agregat
- Operator Khusus
- Setel Operasi
- Batasi, Offset, dan Ambil
SETEL SEARCH_PATH
Pernyataan ini digunakan untuk menyebutkan skema mana yang harus digunakan untuk melakukan semua operasi.
Sintaks:
SET search_path TO schema_name;
Contoh:
SET search_path UNTUK guru;
MASUKKAN
Pernyataan INSERT digunakan untuk menyisipkan record baru ke dalam tabel.
Sintaks:
Pernyataan INSERT INTO dapat ditulis dengan dua cara berikut:
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);--Anda tidak perlu menyebutkan nama kolomINSERT INTO table_name VALUES (value1, value2, value3, . ..);
Contoh:
INSERT INTO TeachersInfo(TeacherID, TeacherName, Alamat, Kota, Kode Pos, Negara, Gaji) NILAI ('01', 'Saurav','Gangnam Street', 'Seoul', '06499', 'Korea Selatan', ' 42000'); INSERT INTO TeachersInfo VALUES ('02', 'Preeti','Queens Quay', 'Rio Claro', '13500', 'Brasil', '45900');
PERBARUI
Pernyataan UPDATE digunakan untuk mengubah record yang ada dalam sebuah tabel.
Sintaks:
PERBARUI table_nameSET column1 =value1, column2 =value2, ...kondisi WHERE;
Contoh:
PERBARUI TeachersInfoSET TeacherName ='Alfred', City='Frankfurt'WHERE TeacherID ='01';
HAPUS
Pernyataan DELETE digunakan untuk menghapus record yang ada dalam tabel.
Sintaks:
DELETE FROM table_name WHERE condition;
Contoh:
HAPUS DARI TeachersInfo WHERE TeacherName='Vinod';
PILIH
Pernyataan SELECT digunakan untuk memilih data dari database dan data yang dikembalikan disimpan dalam tabel hasil, yang disebut set hasil .
Berikut adalah dua cara menggunakan pernyataan ini:
Sintaks:
PILIH kolom1, kolom2, ... FROM table_name;--(*) digunakan untuk memilih semua dari tableSELECT * FROM table_name;
Contoh:
SELECT Teachername, City FROM TeachersInfo; PILIH * FROM TeachersInfo;
Selain dari kata kunci SELECT individual, Anda dapat menggunakan kata kunci SELECT dengan pernyataan berikut:
- BERBEDA
- PESAN OLEH
- GROUP MENURUT
- KALUSUS MEMILIKI
Pernyataan 'PILIH BERBEDA'
Pernyataan SELECT DISTINCT digunakan untuk mengembalikan nilai yang berbeda atau berbeda saja. Jadi, jika Anda memiliki tabel dengan nilai duplikat, Anda dapat menggunakan pernyataan ini untuk mencantumkan nilai yang berbeda.
Sintaks:
SELECT DISTINCT column1, column2, ...FROM table_name;
Contoh:
PILIH Negara DARI TeachersInfo;
Pernyataan 'ORDER BY'
Pernyataan ORDER BY digunakan untuk mengurutkan hasil yang diinginkan dalam urutan menaik atau menurun. Secara default, hasil akan diurutkan dalam urutan menaik. Jika Anda ingin mengurutkan record dalam urutan menurun, maka Anda harus menggunakan DESC kata kunci.
Sintaks:
PILIH kolom1, kolom2, ...FROM table_nameORDER BY kolom1, kolom2, ...ASC|DESC;
Contoh:
SELECT * FROM TeachersInfoORDER MENURUT Negara; SELECT * FROM TeachersInfoORDER MENURUT Negara DESC;SELECT * FROM TeachersInfoORDER BY Negara, TeachersName;SELECT * FROM TeachersInfoORDER BY Negara ASC, TeachersName DESC;
Pernyataan ‘GROUP BY’
Pernyataan ini digunakan dengan fungsi agregat untuk mengelompokkan kumpulan hasil menurut satu atau beberapa kolom.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE conditionGROUP BY column_name(s)ORDER BY column_name(s);
Contoh:
SELECT COUNT(TeacherID), CountryFROM TeachersInfoGROUP BY CountryORDER BY COUNT(TeacherID) DESC;
Pernyataan Klausa 'HAVING'
Sejak WHERE kata kunci tidak dapat digunakan dengan fungsi agregat, klausa HAVING diperkenalkan.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE conditionGROUP BY column_name(s)HAVING conditionORDER BY column_name(s);
Contoh:
SELECT COUNT(TeacherID), CountryFROM TeachersInfoGROUP BY CountryHAVING COUNT(Gaji) > 40000;
Operator Aritmatika, Bitwise, Senyawa, dan Perbandingan – Tutorial PostgreSQL
Operator aritmatika, bitwise, gabungan dan perbandingan adalah sebagai berikut:
OPERATOR LOGIS
Set operator ini terdiri dari operator logika seperti AND/OR/NOT.
DAN OPERATOR
Operator ini menampilkan record, yang memenuhi semua kondisi yang dipisahkan oleh AND.
Sintaks:
PILIH kolom1, kolom2, ...FROM table_nameWHERE kondisi1 DAN kondisi2 DAN kondisi3 ...;Contoh:
SELECT * FROM TeachersInfoWHERE Country='India' AND City='South Korea';ATAU OPERATOR
Operator ini menampilkan record-record yang memenuhi salah satu kondisi yang dipisahkan oleh OR.
Sintaks:
PILIH kolom1, kolom2, ... FROM table_nameWHERE condition1 OR condition2 OR condition3 ...;Contoh:
SELECT * FROM TeachersInfoWHERE Country='India' OR City='South Korea';BUKAN OPERATOR
Operator NOT menampilkan record ketika kondisi NOT TRUE.
Sintaks:
PILIH kolom1, kolom2, ... FROM table_nameWHERE NOT condition;Contoh:
SELECT * FROM TeachersInfoWHERE NOT Country='India';--Anda juga dapat menggabungkan ketiga operator di atas dan menulis kueri seperti ini:SELECT * FROM TeachersInfoWHERE NOT Country='India' AND (City='Bengaluru' OR City='Kolkata');Fungsi Agregat – Tutorial PostgreSQL
Bagian artikel berikut akan menyertakan fungsi seperti:
- MIN()
- MAX()
- JUMLAH()
- AVG()
- SUM()
Fungsi MIN()
Fungsi MIN mengembalikan nilai terkecil dari kolom yang dipilih dalam sebuah tabel.
Sintaks:
SELECT MIN(column_name)FROM table_nameWHERE condition;
Contoh:
PILIH MIN(Gaji) SEBAGAI Gaji TerkecilFROM TeachersInfo;
Fungsi MAX()
Fungsi MAX mengembalikan nilai terbesar dari kolom yang dipilih dalam sebuah tabel.
Sintaks:
SELECT MAX (column_name)FROM table_nameWHERE kondisi;
Contoh:
PILIH MAX(Gaji) SEBAGAIGaji TerbesarFROM TeachersInfo;
JUMLAH() Fungsi
Fungsi COUNT mengembalikan jumlah baris yang cocok dengan kriteria yang ditentukan.
Sintaks:
SELECT COUNT (column_name)FROM table_nameWHERE condition;
Contoh:
PILIH JUMLAH(TeacherID)FROM TeachersInfo;
Fungsi AVG()
Fungsi AVG mengembalikan nilai rata-rata kolom numerik yang Anda pilih.
Sintaks:
SELECT AVG (column_name)FROM table_nameWHERE condition;
Contoh:
PILIH AVG(Gaji)FROM TeachersInfo;
SUM() Fungsi
Fungsi SUM mengembalikan jumlah total kolom numerik yang Anda pilih.
Sintaks:
SELECT SUM(column_name)FROM table_nameWHERE condition;
Contoh:
PILIH SUM(Gaji)FROM TeachersInfo;
Operator Khusus – Tutorial PostgreSQL
Bagian artikel ini akan menyertakan operator berikut:
- ANTARA
- NULL
- SUKA
- MASUK
- ADA
- SEMUA
- APA SAJA
ANTARA Operator
Operator BETWEEN adalah operator inklusif yang memilih nilai (angka, teks, atau tanggal) dalam rentang tertentu.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE column_name ANTARA nilai1 DAN nilai2;
Contoh:
PILIH * FROM TeachersInfoWHERE Biaya ANTARA 30000 DAN 45000;
Operator IS NULL
Karena, tidak mungkin menguji nilai NULL dengan operator pembanding (=, <,>), kita dapat menggunakan operator IS NULL dan IS NOT NULL.
Sintaks:
--Sintaks untuk IS NULLSELECT column_namesFROM table_nameWHERE column_name IS NULL;--Sintaks untuk IS NOT NULLSELECT column_namesFROM table_nameWHERE column_name IS NOT NULL;
Contoh:
SELECT TeacherName FROM TeachersInfoWHERE Address IS NULL;SELECT TeacherName FROM TeachersInfoWHERE Address IS NOT NULL;
SEPERTI Operator
Operator LIKE digunakan dalam klausa WHERE untuk mencari pola tertentu dalam kolom tabel.
Yang disebutkan di bawah ini adalah dua wildcard yang digunakan bersama dengan operator LIKE:
% – Tanda persen mewakili nol, satu, atau beberapa karakter
_ – Garis bawah mewakili satu karakter
Sintaks:
PILIH kolom1, kolom2, ...FROM table_nameWHERE kolom SEPERTI pola;
Contoh:
SELECT * FROM TeachersInfoWHERE TeacherName LIKE 'S%';
Di Operator
Operator IN adalah operator singkatan dan digunakan untuk beberapa kondisi ATAU.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE column_name IN (value1, value2, ...);
Contoh:
SELECT * FROM TeachersInfoWHERE Country IN ('Korea Selatan', 'India', 'Brasil');
CATATAN: Anda juga dapat menggunakan IN saat menulis Kueri Bersarang.
Operator ADA
Operator EXISTS digunakan untuk menguji apakah sebuah record ada atau tidak.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE EXISTS(SELECT column_name FROM table_name WHERE condition);
Contoh:
SELECT TeacherNameFROM TeachersInfoWHERE EXISTS (SELECT * FROM TeachersInfo WHERE TeacherID =05 AND Gaji &amp;gt; 25000);
SEMUA Operator
Operator ALL digunakan dengan klausa WHERE atau HAVING dan mengembalikan nilai true jika semua nilai sub-kueri memenuhi ketentuan.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE column_name operator ALL(SELECT column_name FROM table_name WHERE condition);
Contoh:
SELECT TeacherNameFROM TeachersInfoWHERE TeacherID =SEMUA (SELECT TeacherID FROM TeachersInfo WHERE Gaji &amp;amp;gt; 25000);
OPERASI APA PUN
Serupa dengan operator ALL, operator ANY juga digunakan dengan klausa WHERE atau HAVING dan mengembalikan nilai true jika salah satu nilai sub-kueri memenuhi ketentuan.
Sintaks:
SELECT column_name(s)FROM table_nameWHERE column_name operator ANY(SELECT column_name FROM table_name WHERE condition);
Contoh:
SELECT TeacherNameFROM TeachersInfoWHERE TeacherID =APAPUN (PILIH TeacherID FROM TeachersInfo WHERE Gaji ANTARA 32000 DAN 45000);
Mengatur Operasi – Tutorial PostgreSQL
Terutama ada tiga set operasi:UNION, INTERSECT, MINUS. Anda dapat merujuk ke gambar di bawah ini untuk memahami operasi yang ditetapkan dalam SQL. Lihat gambar di bawah ini:
PERSATUAN
The UNION operator is used to combine the result-set of two or more SELECT statements.
Syntax
SELECT column_name(s) FROM table1UNIONSELECT column_name(s )FROM table2;
INTERSECT
The INTERSECT clause is used to combine two SELECT statements and return the intersection of the data-sets of both the SELECT statements.
Syntax
SELECT Column1 , Column2 ....FROM table_name;WHERE conditionINTERSECTSELECT Column1 , Column2 ....FROM table_name;WHERE condition
EXCEPT
The EXCEPT operator returns those tuples that are returned by the first SELECT operation, and are not returned by the second SELECT operation.
Syntax
SELECT column_nameFROM table_name;EXCEPTSELECT column_nameFROM table_name;
Limit, Offset and Fetch – PostgreSQL Tutorial
LIMIT
The LIMIT statement is used to retrieve a portion of the rows out of the complete rows present in the table.
Syntax:
SELECT column_name
FROM table_name LIMIT number;
Example:
SELECT * FROM TeachersInfo LIMIT 5;
OFFSET
The OFFSET statement omits the number of rows you mention and then retrieves the rest portion of the rows.
Syntax:
SELECT column_name
FROM table_name OFFSET number LIMIT number;
Example:
--Select 3 rows from TeachersInfo after the 5th rowSELECT * FROM TeachersInfo OFFSET 5 LIMIT 3;--Select all rows from TeachersInfoSELECT * FROM TeachersInfo OFFSET 2;
FETCH
The FETCH keyword is used to fetch records from a table using a cursor. Here the cursors will be the following:
- NEXT
- PRIOR
- FIRST
- LAST
- RELATIVE Count
- ABSOLUTE Count
- Count
- ALL
- BACKWARD
- BACKWARD Count
- BACKWARD ALL
- FORWARD
- FORWARD Count
- FORWARD ALL
Syntax:
FETCH cursorname;
Example:
SELECT * FROM TeachersInfo OFFSET 5 FETCH FIRST 5 ROWS ONLY;
Nested Queries – PostgreSQL Tutorial
Nested queries are those queries which have an outer query and inner subquery. So, basically, the subquery is a query which is nested within another query such as SELECT, INSERT, UPDATE or DELETE. Refer to the image below:
So, when you execute this query, you will see the name of the teacher who is from Brazil.
Joins – PostgreSQL Tutorial
JOINS in PostgreSQL are used to combine rows from two or more tables, based on a related column between those tables. The following are the types of joins:
- INNER JOIN: The INNER JOIN returns those records which have matching values in both the tables.
- LEFT JOIN: The LEFT JOIN returns records from the left table, and also those records which satisfy the condition from the right table.
- RIGHT JOIN: The RIGHT JOIN returns records from the right table, and also those records which satisfy the condition from the left table.
- FULL JOIN: The FULL JOIN returns all those records which either have a match in the left or the right table.
Let’s consider the below table apart from the TeachersInfo table, to understand the syntax of joins.
SubjectID | TeacherID | SubjectName |
1 | 10 | Maths |
2 | 11 | Physics |
3 | 12 | Chemistry |
INNER JOIN
Syntax:
SELECT column_name(s)FROM table1INNER JOIN table2 ON table1.column_name =table2.column_name;
Example:
SELECT Subjects.SubjectID, TeachersInfo.TeacherNameFROM SubjectsINNER JOIN TeachersInfo ON Subjects.TeacherID =TeachersInfo.TeacherID;
LEFT JOIN
Syntax:
SELECT column_name(s)FROM table1LEFT JOIN table2 ON table1.column_name =table2.column_name;
Example:
SELECT TeachersInfo.TeacherName, Subjects.SubjectIDFROM TeachersInfoLEFT JOIN Subjects ON TeachersInfo.TeacherID =Subjects.TeacherIDORDER BY TeachersInfo.TeacherName;
RIGHT JOIN
Syntax:
SELECT column_name(s)FROM table1RIGHT JOIN table2 ON table1.column_name =table2.column_name;
Example:
SELECT Subjects.SubjectIDFROM SubjectsRIGHT JOIN TeachersInfo ON Subjects.SubjectID =TeachersInfo.TeacherIDORDER BY Subjects.SubjectID;
FULL JOIN
Syntax:
SELECT column_name(s)FROM table1FULL OUTER JOIN table2 ON table1.column_name =table2.column_name;
Example:
SELECT TeachersInfo.TeacherName, Subjects.SubjectIDFROM TeachersInfoFULL OUTER JOIN Subjects ON TeachersInfo.TeacherID =Subjects.SubjectIDORDER BY TeachersInfo.TeacherName;
Now, next in this article, I will discuss Views, Stored Procedures, and Triggers.
Views – PostgreSQL Tutorial
A view is a single table, which is derived from other tables. So, a view contains rows and columns similar to a real table and has fields from one or more table.
The ‘CREATE VIEW’ statement
The CREATE VIEW statement is used to create a view from an existing table.
Syntax
CREATE VIEW view_name ASSELECT column1, column2, ..., columnNFROM table_nameWHERE condition;
Example
CREATE VIEW teachers_view ASSELECT TeacherName, TeacherIDFROM TeachersInfoWHERE City ='Bengaluru';
The ‘DROP VIEW’ statement
The DROP VIEW statement is used to delete a view.
Syntax
DROP VIEW view_name;
Example
DROP VIEW teachers_view;
PostgreSQL Tutorial For Beginners: Stored Procedures
Stored Procedures are snippets of codes which can be saved and re-used.
Syntax
CREATE PROCEDURE procedure_name
LANGUAGE lang_name;
Example
--Create two tablesCREATE TABLE tbl1(tb1id int);CREATE TABLE tbl2(tb2id int);--Create ProcedureCREATE PROCEDURE insert_data (a1 integer, b1 integer)LANGUAGE SQLAS $$INSERT INTO tbl1 VALUES (a1);INSERT INTO tbl2 VALUES (b1);$$;CALL insert_data(4, 5);
T riggers – PostgreSQL Tutorial
Triggers are a set of SQL statements which are stored in the database catalog. These statements are executed whenever an event associated with a table occurs. So, a trigger can be invoked either BEFORE or AFTER the data is changed by INSERT , UPDATE or DELETE penyataan.
Syntax
CREATE TRIGGER trigger_name [BEFORE|AFTER|INSTEAD OF] event_nameON table_name[--Mention Logic Here];
Example
--CREATE TRIGGERCREATE TRIGGER example_trigger AFTER INSERT ON TeachersInfo;
Data Control (DCL) Commands – PostgreSQL Tutorial
This section consists of those commands which are used to control privileges in the database. The commands are:
- GRANT
- REVOKE
GRANT
The GRANT command is used to provide user access privileges or other privileges for the schema.
Syntax:
GRANT privileges ON object TO user;
Example:
GRANT INSERT ON TeachersInfo TO PUBLIC;
REVOKE
The REVOKE command is used to withdraw user’s access privileges given by using the GRANT command.
Syntax:
REVOKE privileges ON object FROM user;
Example:
REVOKE INSERT ON TeachersInfo FROM PUBLIC;
Now, let’s move on to the last section of this article i.e. the TCL Commands.
Transaction Control (TCL) Commands – PostgreSQL Tutorial
- BEGIN
- COMMIT
- ROLLBACK
- SAVEPOINT
- RELEASE SAVEPOINT
- SET TRANSACTION
BEGIN
The BEGIN TRANSACTION command is used to start the transaction.
Syntax:
BEGIN;
BEGIN TRANSACTION;
Example:
BEGIN;DELETE * FROM TeachersInfo WHERE Salary =65000;
COMMIT
The COMMIT command saves all the transactions to the database since the last COMMIT or ROLLBACK command.
Syntax:
COMMIT;
Example:
DELETE * FROM TeachersInfo WHERE Salary =65000;COMMIT;
ROLLBACK
The ROLLBACK command is used to undo transactions since the last COMMIT or ROLLBACK command was issued.
Syntax:
ROLLBACK;
Example:
DELETE * FROM TeachersInfo WHERE Salary =65000;ROLLBACK;
SAVEPOINT
The SAVEPOINT command defines a new savepoint within the current transaction.
Syntax:
SAVEPOINT savepoint_name; --Syntax for saving the SAVEPOINTROLLBACK TO savepoint_name --Syntax for rolling back to the SAVEPOINT
Example:
SAVEPOINT SP1;DELETE FROM TeachersInfo WHERE Fees =65000;SAVEPOINT SP2;
RELEASE SAVEPOINT
The RELEASE SAVEPOINT command is used to remove a SAVEPOINT that you have created.
Syntax:
RELEASE SAVEPOINT savepoint_name;
Example:
RELEASE SAVEPOINT SP2;
SET TRANSACTION
The SET TRANSACTION command sets the characteristics of the current transaction.
Syntax:
SET TRANSACTION transaction_mode;
UUID Data Type – PostgreSQL Tutorial
UUID data type stores Universally Unique Identifiers (UUID) with a 128 byte length. It is written as a sequence of lower-case hexadecimal digits and is generated by an algorithm. This algorithm is designed to make sure that the same UUID is not generated by any other person in the universe.
Example:
--Generate a a unique UUIDSELECT uuid_generate_v4();
With this, we come to the end of this article on PostgreSQL Tutorial For Beginners. I hope you enjoyed reading this article on PostgreSQL Tutorial For Beginners. We have seen the different commands that will help you write queries and play around with your databases. If you wish to learn more about SQL and get to know this open source relational database, then check out our SQL Essentials Training. This training will help you understand SQL in depth and help you achieve mastery over the subject.
Got a question for us? Please mention it in the comments section of ”PostgreSQL Tutorial For Beginners ” dan saya akan menghubungi Anda kembali.