Materi
Tim keuangan Lumbung Tani akan memakai tabel pesanan untuk laporan kuartal pertama. Sebelum itu, kamu memeriksa kontraknya. Kontrak lengkap tertulis di setiap soal misi ini dan tidak boleh ditafsirkan ulang: aturan yang tidak tertulis tidak diperiksa.
Laporan pelanggaran yang berguna berbentuk satu baris per pasangan baris-aturan, bukan satu angka. Satu pesanan bisa melanggar dua aturan sekaligus, dan pemilik data perlu tahu aturan mana yang dilanggar supaya bisa memperbaiki sumbernya. UNION ALL menumpuk hasil beberapa SELECT tanpa membuang baris kembar, sehingga setiap aturan bisa ditulis sebagai satu SELECT pendek yang mudah dibaca dan diubah.
Setelah laporan per aturan, ringkasan satu baris menjawab pertanyaan pemakai laporan: berapa persen baris yang siap dipakai. Keduanya saling melengkapi. Ringkasan tanpa rincian tidak bisa ditindaklanjuti, sedangkan rincian tanpa ringkasan sulit dipantau dari satu pemuatan ke pemuatan berikutnya.
SELECT kunjungan_id, 'biaya' AS aturan FROM kunjungan WHERE biaya <= 0
UNION ALL
SELECT kunjungan_id, 'tanggal' FROM kunjungan WHERE tanggal IS NULL;