Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

Tutorial SQL :Solusi Satu Pintu untuk Belajar SQL

Di pasar saat ini, di mana sekitar 2,5 Triliun byte data dihasilkan setiap hari, sangat penting untuk memahami cara menangani jumlah data yang begitu besar. Nah, di sinilah Structured Query Language atau SQL berperan. Nah, pada artikel Tutorial SQL kali ini, saya akan membahas konsep-konsep penting berikut, yang merupakan keharusan dalam perjalanan seseorang untuk menjadi seorang Database Administrator.

  • Pengantar SQL
    1. Apa itu SQL?
    2. Aplikasi SQL
    3. Tipe Data SQL
    4. Operator SQL
  • Perintah SQL Teratas
    1. BUAT
    2. TURUN
    3. UBAH
    4. POTONGKAH
    5. JELASKAN
    6. MASUKKAN KE
    7. PERBARUI
    8. PILIH
    9. SUKA
    10. HIBAH
  • Kunci dalam database
  • Batasan SQL
  • Normalisasi
  • SQL Bergabung
  • Tampilan

Tutorial SQL:Pengenalan SQL

Apa itu SQL?

Dikembangkan oleh Donald D.Chamberlin pada tahun 1970-an, Structured Query Language atau yang paling umum dikenal dengan SQL adalah salah satu bahasa yang paling populer digunakan untuk memanipulasi, menyimpan, memperbarui, dan mengambil data dari sebuah basis data relasional. SQL terdiri dari berbagai perintah yang dipisahkan menjadi 4 kategori yaitu DDL, DML, DCL, dan TCL untuk bermain dengan data dalam database. Juga, database relasional seperti Database MySQL, Oracle, MS SQL Server, Sybase dll menggunakan SQL untuk memodifikasi data.

Aplikasi SQL

Aplikasi SQL adalah sebagai berikut:

  • Dengan SQL, Anda dapat membuat dan melepaskan tabel dan database.
  • Ini memungkinkan pengguna untuk mendefinisikan dan memanipulasi data dalam database.
  • SQL memungkinkan pengguna untuk mengakses, memodifikasi, dan mendeskripsikan data dalam RDBMS.
  • Dengan SQL, Anda dapat mengatur izin pada tabel, tampilan, dan prosedur serta memberikan izin khusus kepada pengguna yang berbeda.
  • SQL memungkinkan Anda untuk menyematkan dalam bahasa lain menggunakan pustaka dan modul SQL.

Sekarang setelah Anda mengetahui dasar-dasar SQL, selanjutnya dalam tutorial SQL ini, mari kita pahami apa saja Jenis Data SQL yang berbeda.

Tipe Data SQL

Tipe Data SQL dibagi menjadi beberapa kategori berikut:

  • Numerik – Tipe data numerik memungkinkan bilangan bulat bertanda dan tidak bertanda. Mereka dapat dibagi lagi menjadi tipe data eksak dan perkiraan di mana eksak memungkinkan bilangan bulat dalam bentuk bilangan bulat dan perkiraan memungkinkan bilangan bulat mengambang.
  • String Karakter – Tipe data ini memungkinkan karakter dengan panjang tetap dan variabel. Tipe data ini juga dapat dikategorikan lebih lanjut ke dalam karakter Unicode, yang memungkinkan panjang karakter Unicode tetap dan variabel.
  • Binary – Tipe data biner memungkinkan data disimpan dalam format nilai biner, untuk panjang tetap dan variabel.
  • Tanggal &Waktu – Tipe data ini memungkinkan data disimpan dalam format tanggal dan waktu yang berbeda.
  • Lainnya – Bagian tipe data ini memiliki tipe data seperti tabel, XML, kursor, uniqueidentifier, dan sql_variant.

Jika Anda ingin mendapatkan pemahaman terperinci tentang berbagai tipe data SQL, Anda dapat merujuk ke panduan terperinci tentang Tipe Data SQL.

Operator SQL

Operator adalah konstruksi yang dapat memanipulasi nilai operan. Pertimbangkan ekspresi 4 + 6 =10, di sini 4 dan 6 adalah operan dan + disebut operator.

SQL mendukung jenis Operator berikut:

  • Operator Aritmatika
  • Operator Bitwise
  • Operator Perbandingan
  • Operator Gabungan
  • Operator Logika

Untuk mengetahui berbagai operator yang didukung oleh SQL, secara terperinci, Anda dapat mengklik di sini. Jadi, sekarang setelah Anda mengetahui apa itu SQL dan dasar-dasarnya, mari kita pahami perintah atau pernyataan teratas dalam SQL.

Tutorial SQL:Perintah SQL Teratas

SQL terdiri dari berbagai perintah atau pernyataan untuk menambah, mengubah, menghapus, atau memperbarui data dalam database. Dalam artikel tentang tutorial SQL ini, kita akan membahas pernyataan berikut:

    1. BUAT
    2. TURUN
    3. UBAH
    4. POTONGKAH
    5. JELASKAN
    6. MASUKKAN KE
    7. PERBARUI
    8. PILIH
    9. SUKA
    10. HIBAH

Dalam tutorial SQL ini, saya akan mempertimbangkan database di bawah ini sebagai contoh, untuk menunjukkan cara menulis kueri menggunakan perintah SQL ini.

ID Pelanggan NamaPelanggan Nomor Telepon Alamat Kota Negara
1 Simon 9876543210 Donald Street 52 Hyderabad India
2 Akash 9955449922 Ratu Jalan 74 Mumbai India
3 Patrick 9955888220 Papan Sutra 82 Delhi India
4 Sama 9647974327 IG Road 19 Hyderabad India
5 John 9674325689 Brigade Jalan Blok 9 Bali India

BUAT

Pernyataan CREATE digunakan untuk membuat tabel, tampilan, atau database dengan cara berikut:

BUAT DATABASE

Digunakan untuk membuat database.

Sintaks

CREATE DATABASE DatabaseName;

Contoh

 
CREATE DATABASE CustomerInfo; 

BUAT TABEL

Pernyataan ini digunakan untuk membuat tabel.

Sintaks

CREATE TABLE TableName (
Column1 data type,
Column2 data type,
....

ColumnN data type
);

Contoh

 
CREATE TABLE Customers
(
CustomerID int,
CustomerName varchar(255),
PhoneNumber int,
Address varchar(255),
City varchar(255),
Country varchar(255)
);

BUAT TAMPILAN

Digunakan untuk membuat tampilan.

Sintaks

CREATE VIEW OR REPLACE ViewName AS
SELECT Column1, Column2, ..., ColumnN
FROM TableName
WHERE Condition;

Contoh

CREATE VIEW OR REPLACE HydCustomers AS
SELECT CustomerName, PhoneNumber
FROM Customers
WHERE City = "Hyderabad";

Catatan: Sebelum Anda mulai membuat tabel dan memasukkan nilai, Anda harus menggunakan database, menggunakan pernyataan USE sebagai [USE CustomersInfo; ]

TURUN

Pernyataan DROP digunakan untuk menghapus tabel, tampilan, atau database yang sudah ada.

HAPUS DATABASE

Digunakan untuk menghapus database. Saat Anda menggunakan pernyataan ini, informasi lengkap yang ada di database akan hilang.

Sintaks

DROP DATABASE DatabaseName;

Contoh

DROP DATABASE CustomerInfo;

TABEL DROP

Digunakan untuk menjatuhkan tabel. Saat Anda menggunakan pernyataan ini, informasi lengkap yang ada di tabel akan hilang.

Sintaks

DROP TABLE TableName;

Contoh

DROP TABLE Customers;

LEPASKAN LIHAT

Digunakan untuk menghapus tampilan. Saat Anda menggunakan pernyataan ini, informasi lengkap yang ada dalam tampilan akan hilang.

Sintaks

DROP VIEW ViewName;

Contoh

DROP VIEW HydCustomers;

UBAH

Pernyataan ALTER digunakan untuk menambah, menghapus, atau mengubah batasan atau kolom dalam tabel yang ada.

ALTER TABLE

Pernyataan ALTER digunakan untuk menghapus, menambah, mengubah kolom dalam tabel yang ada. Anda dapat menggunakan ALTER TABLE dengan kolom ADD/DROP untuk menambah atau melepaskan kolom dalam tabel. Selain itu, Anda juga dapat MENGUBAH/MEMODIFIKASI kolom tertentu.

Sintaks

ALTER TABLE TableName
ADD ColumnName Data Type;
ALTER TABLE TableName
DROP COLUMN ColumnName;

ALTER TABLE TableName
ALTER COLUMN ColumnName Data Type;

Contoh

--ADD Column Gender:
 ALTER TABLE Customers
ADD  Gender varchar(255);
 
--DROP Column Gender: 
ALTER TABLE Customers
DROP COLUMN Gender ;

--Add a column DOB and change the data type from Date to Year.
 
ALTER TABLE DOB
ADD DOB date;
 
ALTER TABLE DOB
ALTER DOB year;

POTONGKAT

Pernyataan TRUNCATE digunakan untuk menghapus informasi yang ada dalam tabel, tetapi bukan tabel itu sendiri. Jadi, setelah Anda menggunakan perintah ini, informasi Anda akan hilang, tetapi tabel tidak akan tetap ada di database.

Sintaks

TRUNCATE TABLE TableName;

Contoh

TRUNCATE Table Customers;

Jelaskan

Pernyataan EXPLAIN dan DESCRIBE adalah sinonim yang digunakan untuk memperoleh rencana eksekusi kueri dan informasi tentang struktur tabel masing-masing. Pernyataan ini dapat digunakan dengan pernyataan INSERT , DELETE, SELECT, UPDATE dan REPLACE.

Sintaks

--Syntax for DESCRIBE
DESCRIBE TableName;

--Sample syntax for EXPLAIN
EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);

Contoh

DESCRIBE Customers;

EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);

MASUKKAN KE

Pernyataan INSERT INTO digunakan untuk menyisipkan record baru ke dalam tabel.

Sintaks

INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN)
VALUES (value1, value2, value3, ...);

--If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types :

INSERT INTO TableName
VALUES (Value1, Value2, Value3, ...);

Contoh

INSERT INTO Customers(CustomerID, CustomerName, PhoneNumber, Address, City, Country)
VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India');
 
INSERT INTO Customers
VALUES ('07', 'Himani','9858018368', 'Nice Road 42', 'Kolkata', 'India');

PERBARUI

Pernyataan UPDATE digunakan untuk mengubah record yang sudah ada di tabel.

Sintaks

UPDATE TableName
SET Column1 = Value1, Column2 = Value2, ...
WHERE Condition;

Contoh

UPDATE Customers
SET CustomerName = 'Aisha', City= 'Kolkata'
WHERE EmployeeID = 2;

PILIH

Pernyataan SELECT digunakan untuk memilih data dari database dan menyimpannya dalam tabel hasil, yang disebut set hasil .

Sintaks

SELECT Column1, Column2, ...ColumN
FROM TableName;

--(*) is used to select all from the table
SELECT * FROM table_name;

-- To select the number of records to return use:
SELECT TOP 3 * FROM TableName;

Contoh

SELECT CustomerID, CustomerName
FROM Customers;
 
--(*) is used to select all from the table
SELECT * FROM Customers;
 
-- To select the number of records to return use:
SELECT TOP 3 * FROM Customers;

Selain itu, Anda dapat menggunakan kata kunci SELECT dengan DISTINCT, ORDER BY, GROUP BY, HAVING Clause dan INTO.

SUKA

Operator ini digunakan dengan klausa WHERE untuk mencari pola tertentu dalam kolom tabel. Terutama ada dua wildcard yang digunakan bersama dengan operator LIKE:

  • % – Cocok dengan 0 karakter atau lebih.
  • _ – Ini cocok dengan tepat satu karakter.

Sintaks

SELECT ColumnName(s)
FROM TableName
WHERE ColumnName LIKE pattern;

Contoh

SELECT * FROM Customers
WHERE CustomerName LIKE 'S%';

HIBAH

Perintah GRANT digunakan untuk memberikan hak istimewa atau akses pada database dan objeknya kepada pengguna.

Sintaks

GRANT PrivilegeName
ON ObjectName
TO {UserName |PUBLIC |RoleName}
[WITH GRANT OPTION];

di mana,

  • NamaPrivilege – Hak istimewa/hak/akses yang diberikan kepada pengguna.
  • NamaObjek – Nama objek database seperti TABLE/VIEW/STORED PROC.
  • NamaPengguna – Nama pengguna yang diberikan akses/hak/hak istimewa.
  • PUBLIK – Untuk memberikan hak akses kepada semua pengguna.
  • NamaPeran – Nama sekumpulan hak istimewa yang dikelompokkan bersama.
  • DENGAN PILIHAN HIBAH – Untuk memberikan akses kepada pengguna untuk memberikan hak kepada pengguna lain.

Contoh

-- To grant SELECT permission to Customers table to admin
GRANT SELECT ON Customers TO admin;

Sekarang setelah Anda mengetahui Perintah SQL teratas, mari kita pahami apa saja jenis kunci yang digunakan dalam database. Nah, konsep ini akan membantu Anda memahami bagaimana setiap tabel terkait dengan tabel lainnya dalam sistem manajemen basis data relasional.

Tutorial SQL:Kunci

Berikut ini adalah 7 jenis kunci, yang dapat dipertimbangkan dalam database:

  • Kunci Kandidat – Satu set atribut yang secara unik dapat mengidentifikasi tabel dapat disebut sebagai Candidate Key. Sebuah tabel dapat memiliki lebih dari satu kunci kandidat, dan dari kunci kandidat yang dipilih, satu kunci dapat dipilih sebagai Kunci Utama.
  • Kunci Super – Himpunan atribut yang secara unik dapat mengidentifikasi tupel dikenal sebagai Super Key. Jadi, kunci kandidat, kunci utama, dan kunci unik adalah kunci super, tetapi tidak demikian halnya sebaliknya.
  • Kunci Utama – Satu set atribut yang digunakan untuk mengidentifikasi secara unik setiap tupel juga merupakan kunci utama.
  • Kunci Alternatif – Kunci Alternatif adalah kunci kandidat, yang tidak dipilih sebagai kunci Primer.
  • Kunci Unik – Kunci unik mirip dengan kunci utama, tetapi memungkinkan satu nilai NULL di kolom.
  • Kunci Asing – Atribut yang hanya dapat mengambil nilai yang ada sebagai nilai dari beberapa atribut lain, adalah kunci asing untuk atribut yang dirujuk.
  • Kunci Gabungan – Kunci komposit adalah kombinasi dari dua atau lebih kolom yang mengidentifikasi setiap tupel secara unik.

Saya harap Anda telah memahami berbagai jenis kunci dalam database, selanjutnya dalam artikel tutorial SQL ini, mari kita bahas kendala dalam database. Nah, kendala SQL digunakan untuk meningkatkan akurasi dan keandalan data yang masuk ke database melalui tabel.

Tutorial SQL: Batasan

Konstrain SQL memastikan tidak ada pelanggaran dalam hal transaksi data jika ditemukan maka tindakan akan dihentikan. Kegunaan utama dari constraint berikut adalah untuk membatasi tipe data yang dapat masuk ke dalam sebuah tabel.

  • BUKAN NULL – Batasan ini digunakan untuk memastikan bahwa kolom tidak dapat menyimpan nilai NULL.
  • UNIK – Batasan UNIK digunakan untuk memastikan semua nilai yang dimasukkan dalam kolom atau tabel adalah unik.
  • PERIKSA – Batasan ini digunakan untuk memastikan bahwa kolom atau beberapa kolom memenuhi kondisi tertentu.
  • DEFAULT – Batasan DEFAULT digunakan untuk menetapkan nilai default untuk kolom jika tidak ada nilai yang ditentukan.
  • INDEX – Batasan ini digunakan untuk mengindeks tabel, sehingga Anda dapat membuat dan mengambil data dari database dengan sangat cepat.

Jika Anda ingin tahu tentang batasan berikut secara mendalam dengan sintaks dan contoh, Anda dapat merujuk ke artikel lain tentang SQL. Jadi, sekarang Anda tentang kunci dan batasan dalam database, selanjutnya di artikel tutorial SQL ini, mari kita lihat konsep Normalisasi yang menarik.

Tutorial SQL:Normalisasi

Normalisasi adalah proses mengatur data untuk menghindari duplikasi dan redundansi. Ada banyak tingkat normalisasi yang berurutan dan itu disebut bentuk normal . Juga, setiap bentuk normal berurutan tergantung pada yang sebelumnya. Berikut ini adalah bentuk-bentuk normal yang ada:

Untuk memahami bentuk normal di atas, mari kita perhatikan tabel berikut:

Dengan mengamati tabel di atas, Anda dapat dengan jelas melihat redundansi dan duplikasi data. Jadi, mari kita normalkan tabel ini. Untuk mulai menormalkan database, Anda harus selalu memulai dengan bentuk normal terendah yaitu 1NF dan kemudian melanjutkan ke bentuk normal yang lebih tinggi.

Sekarang, mari kita lihat bagaimana kita dapat melakukan bentuk normal pertama, untuk tabel di atas.

Bentuk Normal Pertama(1NF)

Untuk memastikan bahwa database harus dalam 1NF , setiap sel tabel harus memiliki satu nilai. Jadi, pada dasarnya semua rekaman harus unik . Tabel di atas akan dinormalisasi menjadi 1NF seperti di bawah ini:

Jika Anda mengamati tabel di atas, semua record adalah unik. Namun, masih banyak terjadi redundansi dan duplikasi data. Jadi, untuk menghindarinya, mari kita normalkan database ke bentuk normal kedua.

Bentuk Normal Kedua(2NF)

Untuk memastikan bahwa database harus dalam 2NF , database harus 1NF dan juga harus memiliki kunci utama satu kolom . Tabel di atas akan dinormalisasi menjadi 2NF seperti di bawah ini:

Jika Anda mengamati tabel di atas, setiap tabel memiliki kunci utama satu kolom. Tetapi ada banyak redundansi data dan duplikasi beberapa kolom. Untuk menghindarinya, mari kita normalisasikan database ke dalam bentuk normal ketiga.

Bentuk Normal Ketiga(3NF)

Untuk memastikan bahwa database harus dalam 3NF , database harus dalam 2NF dan tidak boleh memiliki ketergantungan fungsional transitif . Tabel di atas akan dinormalisasi menjadi 3NF seperti di bawah ini:

Jika Anda mengamati tabel di atas, database tidak memiliki ketergantungan transitif. Jadi, setelah langkah ini, kita tidak perlu menormalkan database kita lebih lanjut. Namun, jika Anda melihat adanya anomali atau lebih dari satu kunci kandidat, maka Anda dapat melanjutkan dengan bentuk normal yang lebih tinggi berikutnya, yaitu BCNF.

Bentuk Normal Boyce-Codd(BCNF)

Untuk memastikan bahwa database harus dalam BCNF, database harus ada dalam 3NF dan tabel harus dibagi lebih lanjut, untuk memastikan hanya satu kunci kandidat yang ada.

Dengan ini, kita mengakhiri normalisasi. Nah, selanjutnya dalam tutorial SQL ini, mari kita bahas konsep penting dalam SQL, yaitu Joins.

Tutorial SQL:Bergabung

Gabung digunakan untuk menggabungkan baris dari dua tabel atau lebih, berdasarkan kolom terkait antara tabel tersebut dan juga pada beberapa kondisi. Terutama ada empat jenis gabungan:

  • GABUNG DALAM: Gabung ini mengembalikan catatan yang memiliki nilai yang cocok di kedua tabel.
  • GABUNG LENGKAP: FULL JOIN mengembalikan semua record yang memiliki kecocokan di tabel kiri atau kanan.
  • KIRI GABUNG: Gabungan ini mengembalikan record dari tabel kiri, dan juga record yang memenuhi kondisi dari tabel kanan.
  • GABUNG KANAN: Gabung ini mengembalikan record dari tabel kanan, dan juga record yang memenuhi kondisi dari tabel kiri.

Jadi, ini adalah deskripsi singkat tentang BERGABUNG, tetapi jika Anda ingin penjelasan rinci tentang BERGABUNG dengan contoh terperinci, Anda dapat merujuk ke artikel saya tentang SQL BERGABUNG. Selanjutnya, dalam tutorial SQL ini, mari kita bahas konsep terakhir untuk artikel ini yaitu Views.

Tutorial SQL:Tampilan

Tampilan dalam SQL adalah tabel tunggal, yang diturunkan dari tabel lain. Tampilan berisi baris dan kolom yang mirip dengan tabel nyata dan memiliki bidang dari satu atau beberapa tabel. Lihat gambar di bawah ini:

Untuk memahami cara membuat dan melepaskan tampilan, Anda dapat merujuk ke pernyataan CREATE dan DROP yang disebutkan di atas. Dengan itu, kami mengakhiri artikel tentang tutorial SQL ini. Saya harap Anda menemukan artikel ini informatif. Selain itu, jika Anda sedang mempersiapkan wawancara Database Administrator, dan sedang mencari daftar pertanyaan yang lengkap, Anda dapat merujuk ke artikel kami tentang Pertanyaan Wawancara SQL.

Jika Anda ingin mempelajari lebih lanjut tentang MySQL dan mengenal database relasional sumber terbuka ini, lihat Pelatihan Sertifikasi DBA MySQL kami yang dilengkapi dengan pelatihan langsung yang dipimpin instruktur dan pelatihan nyata -pengalaman proyek hidup. Pelatihan ini akan membantu Anda memahami MySQL secara mendalam dan membantu Anda menguasai subjek tersebut.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar SQLTutorial ini dan kami akan menghubungi Anda kembali.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengambil pendekatan manusia untuk tata kelola data

  2. Pertimbangan Sekitar Urutan Kolom dalam Indeks dan Sortir

  3. Meningkatkan Solusi Median Penomoran Baris

  4. Jenis yang Menumpahkan ke Level 15.000

  5. Bagaimana mengatasi kesalahan `prisma/klien belum menginisialisasi` di Vercel