Kursus
Basis data relasional adalah sekumpulan tabel (kumpulan data dengan baris dan kolom) yang memuat informasi yang saling terkait dengan tabel lain dalam basis data.
Diagram di bawah ini memuat informasi tentang kolom pada dua tabel dalam contoh basis data relasional. Kedua tabel memiliki kolom bernama customer_id, yang membentuk relasi antar tabel. Seiring perusahaan berkembang dan mencatat ribuan (atau jutaan) pesanan, menyimpan data dalam tabel terpisah membantu mengoptimalkan ruang dan mengurangi ukuran basis data.

SQL, atau Structured Query Language, adalah bahasa standar untuk berinteraksi dengan basis data relasional. Dengan SQL, Anda dapat melakukan query, atau mengajukan pertanyaan, terhadap data dalam basis data relasional. Bekerja dengan SQL dan basis data relasional adalah seperangkat keterampilan yang sangat berharga bagi analis data, insinyur data, atau ilmuwan data.
Jika Anda mulai mencari cara untuk belajar SQL, Anda mungkin memperhatikan banyaknya dialek SQL yang tersedia untuk dipelajari dengan sejumlah perbedaan yang jelas (dan kurang jelas) di antara berbagai dialek tersebut. Jadi, dari mana sebaiknya Anda mulai? Versi SQL mana yang paling bermanfaat bagi Anda jika Anda belum pernah menggunakannya? Dalam artikel ini, kami akan berfokus pada empat sistem manajemen basis data yang paling populer -- PostgreSQL, MySQL, SQLite, dan SQL Server -- beserta versi sintaks SQL masing-masing.
Grafik di bawah ini dari Stack Overflow Trends memberikan gambaran tentang seberapa sering masing-masing platform dibahas -- setiap garis merepresentasikan persentase dari semua pertanyaan di Stack Overflow tentang tiap versi SQL.

MySQL secara konsisten menjadi versi SQL yang paling populer dalam pertanyaan di Stack Overflow. Di posisi kedua adalah Microsoft SQL Server (termasuk T-SQL, nama dialek SQL milik Microsoft), yang tetap menjadi tag yang secara konsisten lebih populer daripada PostgreSQL dan SQLite. Ini berarti jika Anda memiliki pertanyaan spesifik tentang salah satu sistem tersebut, kemungkinan besar Anda akan menemukan bahwa seseorang sudah pernah menanyakan hal yang sama.
Apa bedanya?
PostgreSQL, MySQL, dan SQLite menggunakan sintaks yang sangat mirip, dengan beberapa perbedaan penting yang disorot di bawah. Microsoft SQL Server memiliki perbedaan paling besar dalam sintaks SQL, serta beragam fungsi yang tidak tersedia di platform lain. Tabel di bawah menyoroti beberapa contoh perbedaan dasar antar platform SQL.
| SQL Server | MySQL | PostgreSQL | SQLite | |
|---|---|---|---|---|
| SELECT ... | Select [col1], [col2] | SELECT col1, col2 | SELECT col1, col2 | SELECT col1, col2 |
| Data dari tabel peka huruf besar/kecil? | Ya WHERE name = ‘John’ atau WHERE name = ‘john’ tidak sama | Tidak WHERE name = ‘John’ atau WHERE name = ‘john’ sama | Ya WHERE name = ‘John’ atau WHERE name = ‘john’ tidak sama | Ya WHERE name = ‘John’ atau WHERE name = ‘john’ tidak sama |
| Menggunakan tanda kutip | name = ‘John’ saja | name = ‘John’ atau name = “John” | name = ‘John’ saja | name = ‘John’ atau name = “John” |
| Alias untuk kolom dan tabel | SELECT AVG(col1)=avg1 | SELECT AVG(col1) AS avg1 | SELECT AVG(col1) AS avg1 | SELECT AVG(col1) AS avg1 |
| Bekerja dengan tanggal | GETDATE() DATEPART() | CURDATE() CURTIME() EXTRACT() | CURRENT_DATE() CURRENT_TIME() EXTRACT() | DATE(‘now’) strftime() |
| Fungsi jendela, mis. OVER(), PARTITION BY() | Ya | Ya | Ya | Ya |
Dari mana saya mulai?
Bagi pelajar yang memiliki sedikit atau tanpa pengalaman dengan SQL dan ingin memperoleh keterampilan yang paling luas penerapannya, saya menyarankan untuk mulai dengan PostgreSQL. Terlepas dari popularitas MySQL yang luar biasa, PostgreSQL bisa jadi pilihan yang lebih baik karena sintaksnya paling sesuai dengan Standard SQL. Ini berarti Anda dapat dengan mudah menerjemahkan keterampilan Anda ke sistem manajemen basis data lain seperti MySQL atau SQLite. Sebagai contoh, query di bawah ini mengagregasikan data dari basis data informasi penjualan. Query ini memuat join, fungsi agregat, dan filter. Sintaks ini akan menghasilkan hasil yang identik di ketiga sistem basis data tersebut.
Select
c.customer_name,
SUM(p.amount) AS total_sales
FROM customers AS c
LEFT JOIN purchases AS p
ON c.customers_id = p.customer_id
WHERE
c.customer_location = 'USA'
GROUP BY
c.customer_name;
Jika Anda memperkirakan akan bekerja dengan Microsoft SQL Server dalam karier Anda, saya menyarankan Anda mulai dengan mempelajari T-SQL/Microsoft SQL. SQL Server terus mempertahankan pangsa pasar yang cukup besar dan merupakan sistem manajemen basis data yang penting di banyak industri. Jika Anda tidak yakin mana di antara keduanya yang lebih penting bagi Anda, saya menyarankan untuk menelusuri lowongan pekerjaan di bidang Anda untuk mengetahui apakah ada preferensi terhadap sistem basis data tertentu pada peran atau industri tertentu.
Bagaimana DataCamp dapat membantu?
Di DataCamp, saat ini kami menawarkan dua kursus SQL yang mencakup topik pengantar dan join di PostgreSQL. Kami sedang mengembangkan beberapa kursus menarik yang membahas topik tingkat menengah dan lanjutan di PostgreSQL. Kami juga memiliki beberapa kursus SQL Server yang sedang dikembangkan, termasuk kursus Pengantar T-SQL/Microsoft SQL yang akan memberikan dasar yang jelas untuk bekerja dengan SQL Server. Anda dapat melihat peta jalan kursus kami untuk informasi lebih lanjut.
Jika Anda ingin berlatih berinteraksi dengan basis data PostgreSQL secara mandiri, saya menyarankan untuk menjelajahi kumpulan data di Kaggle. Jika Anda menemukan sesuatu yang menarik, silakan impor ke PostgreSQL (file CSV atau SQLite dapat diimpor ke PostgreSQL) dan mulai mengeksplorasi!
Ayo mengajar bersama kami!
Apakah Anda tertarik berbagi pengetahuan dan keahlian Anda dengan 3 juta pelajar kami di DataCamp? Kami selalu mencari instruktur untuk berkontribusi pada perpustakaan kursus kami yang terus berkembang. Daftar keinginan kursus kami menyoroti keterampilan yang ingin kami sediakan bagi para pelajar dalam beberapa bulan mendatang. Anda dapat mendaftar melalui tautan ini. Kami menantikan dapat bekerja sama dengan Anda!
