Senior
SQL առաջադրանք 3: Ցուցադրել առաջադրանքների ցանկը, որոնց վրա աշխատել եք 2025 թվականի օգոստոսին (սկսվել կամ իրականացվել օգոստոսին)
sobes.tech AI
Պատասխան AI-ից
Ցանկացած աշխատանքների ցանկը ստանալու համար, որոնց վրա աշխատել եք օգոստոս 2025-ին (այսինքն՝ աշխատանքներ, որոնք սկսվել են օգոստոսին կամ կատարվել են այդ ժամանակահատվածում), անհրաժեշտ է ստուգել աշխատանքային շրջանի և օգոստոսի 2025-ի հատման կետը:
Ենթադրենք, ունենք tasks աղյուսակ, որի դաշտերը task_id, start_date և end_date (որտեղ 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 բացակայում է, ընդունվում է, որ աշխատանքը դեռ շարունակվում է: