Sobes.tech
Senior

SQL тапшырмасы 3: 2025-жылдын август айында иштелип чыккан же жүргүзүлгөн тапшырмалар тизмесин көрсөтүңүз

sobes.tech AI

AIден жооп

2025-жылдын август айында иштелип чыккан же ушул мезгилде жүргүзүлгөн тапшырмалардын тизмесин алуу үчүн, иштөө мөөнөтү менен август 2025тин кесилишин текшерүү керек.

Айтайын дегенде, бизде task_id, start_date жана end_date талаалары бар tasks таблицасы бар (мында end_date NULL болушу мүмкүн, эгер тапшырма дагы аяктаган эмес болсо).

SQL суроосунун мисалы:

SELECT *
FROM tasks
WHERE
    -- Тапшырма 2025-жылдын август айында башталган
    (start_date >= '2025-08-01' AND start_date < '2025-09-01')
    
    OR

    -- Тапшырма эрте башталган, бирок августта жүргүзүлгөн (end_date >= '2025-08-01')
    (start_date < '2025-08-01' AND (end_date IS NULL OR end_date >= '2025-08-01'))
;

Бул суроо иштөө мөөнөтү 2025-жылдын август айы менен кесилишкен тапшырмаларды тандайт. Эгер end_date жок болсо, ал дагы улантып жаткан деп эсептелет.