18 poin oleh GN⁺ 2024-02-07 | 1 komentar | Bagikan ke WhatsApp

SQL for the Weary

  • Target pembaca: Rachel, yang memiliki gelar master biologi sel, bekerja pada analisis sel di rumah sakit riset dan ingin menjadi ilmuwan data.
  • Pengetahuan awal yang dibutuhkan: Perintah Unix dasar dan kemampuan menganalisis data tabular.
  • Hasil pembelajaran: Menjelaskan perbedaan antara database dan administrator database, menulis SQL, mendefinisikan tabel dan memanipulasi data, menjelaskan jenis-jenis join, menggunakan window function untuk bekerja dengan baris yang berdekatan, memahami transaction dan trigger, memanipulasi data JSON dengan SQL, serta berinteraksi dengan database melalui Python.

Pengaturan

  • Unduh rilis terbaru: Ekstrak file yang berisi contoh database SQLite, kueri SQL, skrip Python, dan lainnya ke direktori sementara.

Konsep latar belakang

  • Database: Kumpulan data yang dapat ditelusuri dan diambil kembali.
  • Sistem manajemen database (DBMS): Program yang mengelola jenis database tertentu.
  • SQLite: Menyimpan database sebagai satu file, sedangkan PostgreSQL mendistribusikan informasi ke beberapa file untuk performa yang lebih tinggi.
  • Sistem manajemen database relasional (RDBMS): Menyimpan data dalam tabel dan melakukan kueri menggunakan SQL.
  • Database NoSQL: Ada juga database seperti MongoDB yang tidak menggunakan tabel.

Koneksi database

  • Koneksi database: Bukan kueri yang sebenarnya, tetapi langkah yang diperlukan sebelum melakukan pekerjaan lain.

Perintah administrasi

  • Perintah administrasi SQLite: Bukan bagian dari SQL standar, dan perintah khusus PostgreSQL diawali dengan \.
  • Format output: Gunakan .headers on dan .mode markdown agar hasil ditampilkan dengan mudah dibaca.

Manipulasi tabel

  • Membuat tabel: Mendefinisikan tabel dan kolom dengan perintah create table.
  • Menyisipkan data: Menambahkan data ke tabel dengan perintah insert into.
  • Memperbarui baris: Mengubah data pada baris yang memenuhi kondisi tertentu dengan perintah update.
  • Menghapus baris: Menghapus baris yang memenuhi kondisi tertentu dengan perintah delete from.

Join

  • Join: Operasi untuk menggabungkan informasi dari dua tabel.
  • Inner join: Menggunakan inner join untuk menggabungkan hanya baris yang cocok dari kedua tabel.
  • Left join: Menggunakan left join untuk mempertahankan semua baris dari tabel kiri dan mengisi nilai yang hilang dari tabel kanan dengan null.

Fungsi agregasi

  • Agregasi: Operasi untuk menggabungkan beberapa nilai menjadi satu.
  • Fungsi agregasi umum: Mengagregasi data menggunakan sum, max, min, avg, dan lainnya.
  • Pengelompokan: Menggunakan group by untuk mengelompokkan baris berdasarkan kombinasi unik dari kolom tertentu dan melakukan agregasi untuk setiap grup.

Pendapat GN⁺

  • Artikel ini adalah materi untuk membantu pemahaman dasar tentang database dan SQL, dan berguna bagi insinyur perangkat lunak pemula maupun mereka yang tertarik pada data science.
  • Dengan contoh nyata, artikel ini menjelaskan berbagai fitur SQL sehingga memberikan pengetahuan praktis tentang pengelolaan dan manipulasi database.
  • Khususnya, join database, fungsi agregasi, dan manipulasi tabel sangat penting dalam pekerjaan terkait analisis data, dan artikel ini membantu memahami konsep-konsep tersebut dengan jelas.

1 komentar

 
GN⁺ 2024-02-07
Komentar Hacker News
  • Dengan menggunakan ChatGPT, kita bisa menulis kueri kompleks layaknya seorang data scientist. Melalui ini, kita bisa memperoleh metrik berguna seperti conversion rate dan click-through rate pesan.
  • Makna istilah data scientist telah berubah sejak masa ketika profesi ini disebut sebagai "pekerjaan paling seksi". Dalam artikel tersebut, Rachel yang bergelar magister biologi sedang melakukan analisis sel di rumah sakit riset dan ingin menjadi data scientist. Dulu, data scientist adalah orang-orang yang memiliki latar belakang kuantitatif sekaligus rekayasa perangkat lunak, tetapi sekarang kadang dianggap sebagai "data analyst yang dibesar-besarkan".
  • Mungkin akan lebih baik jika panduan ini ditulis ulang menggunakan DuckDB. Saat ini DuckDB lebih sering digunakan oleh data scientist dibanding SQLite.
  • Ini adalah panduan SQL yang sangat ringkas, dengan pengajaran yang sangat baik melalui contoh. Di universitas-universitas AS, materi seperti ini diajarkan selama satu semester, tetapi panduan ini sudah cukup untuk sebagian besar pekerjaan software engineering di industri selain optimisasi database.
  • Kita bisa berlatih SQL lewat aplikasi Mac bernama TextQuery. Dataset CSV bisa diimpor dengan cepat lalu kueri SQL dapat dijalankan, dan versi beta saat ini tersedia gratis.
  • Tutorial panjang dalam satu halaman seperti ini bagus untuk diunduh saat penerbangan dengan Wi‑Fi yang tidak stabil. Saya penasaran apakah ada tutorial serupa untuk bahasa atau teknologi lain selain SQL.
  • Banyak kueri hanya valid di SQLite, dan ada fitur yang tidak didukung di beberapa DBMS. Misalnya, aggregate filtering tidak didukung di MySQL, MS SQL, Oracle, dan lainnya.
  • Ini tampaknya lebih merupakan ringkasan SQL umum yang bagus daripada tutorial khusus untuk data scientist.
  • Penjelasan tentang "left outer join" hanya berlaku untuk kondisi kesetaraan, dan dapat menimbulkan pemahaman yang keliru tentang left join. Penjelasan seperti ini sangat umum, tetapi bisa menyesatkan.