[**Belajar SQL**](http://pojokprogrammer.net/tags/belajar-sql) | Seiring dengan kebutuhan aplikasi-aplikasi bisnis dan layanan publik masa kini, maka kebutuhan penyimpanan data dalam bentuk database relasional menjadi hal yang tidak terelakkan, sehingga pemahaman yang baik tentang ***structured query language*** (***SQL***) menjadi hal yang **amat sangat penting** karena SQL adalah bahasa yang kita gunakan untuk *berkomunikasi* dengan database. Sayangnya kenyataan berkata lain, peningkatan skill SQL menjadi prioritas paling akhir karena kebanyakan programmer terlalu fokus pada hal lain yang lebih *seksi*, seperti, meningkatkan skill bahasa pemrograman tertentu, membuat user interface yang atraktif dan user-friendly, dan membuat aplikasi yang bisa berjalan di database apapun
[**Belajar SQL**](https://pojokprogrammer.net/tags/belajar-sql) | Bersamaan dengan naiknya Jokowi sebagai presiden Indonesia, maka makin populer juga sistem infomrasi elektronis sebagai salah satu bentuk layanan publik sepert e-SPT, e-Proc, e-Gov, dan sebagainya membawa berkah tersendiri bagi para pengembang perangkat lunak (*software*) di Indonesia. Namun semua itu bukalah tanpa kendala. Statement Jokowi bahwa sistem terswbut bisa dibangun hanya dalam 2 (dua) minggu cukup menimbulakn perdebatan di kalangan IT.
Seiring dengan kebutuhan aplikasi-aplikasi bisnis dan layanan publik seperti di atas, maka kebutuhan penyimpanan data dalam bentuk database relasional menjadi hal yang tidak terelakkan, sehingga pemahaman yang baik tentang ***structured query language*** (***SQL***) menjadi hal yang **amat sangat penting** karena SQL adalah bahasa yang kita gunakan untuk *berkomunikasi* dengan database.
Sayangnya kenyataan berkata lain, peningkatan skill SQL menjadi prioritas paling akhir karena kebanyakan programmer terlalu fokus pada hal lain yang lebih *seksi*, seperti
– meningkatkan skill bahasa pemrograman tertentu,
– membuat user interface yang atraktif dan user-friendly,
– membuat aplikasi yang bisa berjalan di database apapun
Akibatnya muncul *kelucuan-kelucuan* seperti, **pertama**, kebanyakan programmer menjadi kurang piawai meracik SQL sehingga SQL statement yang dibuat terkesan asal jadi. Pengetahuan tentang *SQL statement* hanya sebatas perintah *SELECT*, *INSERT*, *UPDATE*, dan *DELETE* sederhana saja tanpa memanfaatkan *JOIN*.
**Kedua**, kebanyakan programmer tidak memanfaatkan kemampuan canggih yang dimiliki database engine yang digunakan. Sebagai contoh adalah hanya memanfaatkan database sebagai data store saja, dan proses pengolahan data seluruhnya dilakukan di level aplikasi. Padahal seharusnya pemrosesan data bisa diserahkan ke database dengan memanfaatkan *aggregate functions*, *analytical/windowing functions*, dan *stored procedures*.
**Ketiga**, membawa gaya pemrograman prosedural saat memproses data. sebagai contoh untuk memproses data besar masih menggunakan *looping* (perulangan) di level aplikasi, akibatnya kinerja aplikasi semakin menurut seiring dengan bertambah banyaknya data. Padahal seharusnya saat kita memproses data di database harus menggunakan paradigma berpikir *set* (himpunan) dan *bulk processing*, bukan cara prosedural.
**Untuk itu** rangkaian artikel ini ditujukan untuk teman-teman yang ingin mempelajari SQL namun masih baru atau belum memahami sepenuhnya tentang konsep database relasional dan cara memanfaatkan dan membuat perintah SQL dengan baik.
– **[Atur Data Anda](https://pojokprogrammer.net/content/atur-data-anda)**, artikel ini membahas bagaimana sebenarnya data tersimpan dan saling berelasi dalam database relasional, serta sedikit membahas normalisasi data.
– **[Membuat Model Basis Data](https://pojokprogrammer.net/content/membuat-model-basis-data)**, artikel ini membahas bentuk-bentuk relasi secara lebih mendalam, proses analisa dan desain database yang ingin kita bangun.
– **[Temu Kembali Data Menggunakan SELECT](https://pojokprogrammer.net/content/temu-kembali-data-data-retrieval-menggunakan-select)**, artikel ini membahas anatomi perintah SELECT sebagai bahasa yang kita gunakan untuk berkomunikasi dengan database sehingga database bisa memberikan data sesuai dengan yang kita inginkan.
– **[Representasi SQL JOIN Secara Visual](https://pojokprogrammer.net/content/representasi-sql-join-secara-visual)**, artikel ini membahas bentuk perintah SQL JOIN dan variasinya menggunakan diagram venn sehingga memudahkan kita memahami fungsi masing-masing perintah.
– **[Contoh Penggunaan JOIN dalam Perintah SELECT](https://pojokprogrammer.net/content/contoh-penggunaan-join-dalam-perintah-sql-select)**, artikel ini membahas beberapa contoh kasus penggunaan JOIN dan variasinya untuk menyelesaikan sejumlah kasus umum dalam sistem informasi akademik.
Database yang kita gunakan dalam rangkaian artikel ini adalah **PostgreSQL**, sebuah RDBMS yang *free* dan *open source* namun memiliki kemampuan yang setara dengan RDBMS kelas atas seperti *Oracle Database*.
.