Menu
CoddyTech

Keputusan Akhir

Pelajaran 3 dari 3 dalam kursus Paket Tantangan SQL #2 di Coddy.

challenge icon

Tantangan

Sedang

Untuk membangun sebuah kastel, sang pembangun membutuhkan banyak alat. Sulit memahami alat mana yang harus ia gunakan dan dalam urutan apa alat-alat itu harus digunakan. Untuk itu, kita akan mengambil informasi penting dan membantu sang pembangun membuat kastelnya. 

 

Sekarang sang pembangun memiliki tabel kekuatan yang menunjukkan jumlah poin yang ia miliki untuk menggunakan alat setiap jam. Setiap jam ia dapat menggunakan setiap alat satu kali, dan ia harus menggunakan alat sebanyak mungkin setiap jam. Tingkat kesulitan sebuah alat adalah jumlah poin yang digunakan sang pembangun. 

 

Sang pembangun ingin menentukan jam untuk membangun kastel. Jam terbaik adalah jam dengan selisih lebih besar antara power dan used.  

Kembalikan hour dan selisih antara kolom power dan used, beri nama kolom ini space.

Hapus semua baris dengan space yang nilainya sama dengan nol dan hapus semua jam yang mencakup menit ke-30 (13:30, 14:30)

 

Kembalikan hour, points, dan poin yang ia gunakan pada jam tersebut, beri nama kolom ini used

 

Coba sendiri

WITH cumulating AS (
    SELECT SUM(difficulty) OVER (ORDER BY row_num ASC) as tot_until_now
    FROM (
        SELECT name, difficulty, ROW_NUMBER() OVER (order by difficulty asc) as row_num 
        FROM tools
    )
    order by difficulty 
)

SELECT hour, power, (
    SELECT tot_until_now 
    FROM cumulating 
    WHERE tot_until_now <= power 
    ORDER BY tot_until_now DESC
    LIMIT 1
    ) as used
FROM strength

Semua pelajaran di Paket Tantangan SQL #2

1Tantangan

Inventaris KastelAlat yang DigunakanPelajaran proyekKeputusan AkhirPelajaran proyek

Latihan sendiri: Playground SQL