Asosiy matnga o'tish

192. Kalendar generatsiyasi

Qiyin

2025-06-01 dan 2025-06-14 gacha bo'lgan har bir kun uchun bitta

qatorli kalendar tuzing.

Kunlarni jadvaldan olmaysiz — ularni GENERATE_SERIES yaratadi:

GENERATE_SERIES(DATE '2025-06-01', DATE '2025-06-14', INTERVAL '1 day')

Natija TIMESTAMP bo'lgani uchun uni ::DATE ga keltiring.

Har bir kun uchun chiqaring:

  • dow — hafta kuni raqami (0 — yakshanba)
  • is_weekend — shanba yoki yakshanbami
  • holiday — holidays jadvalidagi nomi, bayram bo'lmasa NULL

Bayramlar jadvalida iyundan tashqari sanalar ham bor — ular chiqmasin.

Ustunlar: day, dow, is_weekend, holiday.

Saralash: day o'sish.

holidays: day DATE PK, name VARCHAR

Namuna ma'lumotlar

sample
holidays
dayDATEnameVARCHAR(50)
2025-06-01Bolalarni himoya qilish kuni
Kutilgan natija
daydowholidayis_weekend
2025-06-010Bolalarni himoya qilish kunitrue
2025-06-021NULLfalse
2025-06-032NULLfalse
2025-06-043NULLfalse
2025-06-054NULLfalse
2025-06-065NULLfalse
2025-06-076NULLtrue
2025-06-080NULLtrue
2025-06-091NULLfalse
2025-06-102NULLfalse
2025-06-113NULLfalse
2025-06-124NULLfalse
2025-06-135NULLfalse
2025-06-146NULLtrue
sample-full
holidays
dayDATEnameVARCHAR(50)
2025-01-01Yangi yil
2025-03-08Xotin-qizlar kuni
2025-03-21Navro'z
2025-06-01Bolalarni himoya qilish kuni
2025-06-06Kasbiy bayram
2025-09-01Mustaqillik kuni
2025-12-08Konstitutsiya kuni
Kutilgan natija
daydowholidayis_weekend
2025-06-010Bolalarni himoya qilish kunitrue
2025-06-021NULLfalse
2025-06-032NULLfalse
2025-06-043NULLfalse
2025-06-054NULLfalse
2025-06-065Kasbiy bayramfalse
2025-06-076NULLtrue
2025-06-080NULLtrue
2025-06-091NULLfalse
2025-06-102NULLfalse
2025-06-113NULLfalse
2025-06-124NULLfalse
2025-06-135NULLfalse
2025-06-146NULLtrue
sample-extra
holidays
dayDATEnameVARCHAR(50)
2025-03-23Bolalarni himoya qilish kuni
2025-01-27Arxiv
2025-01-15Navro'z
2025-06-14Yangi yil
Kutilgan natija
daydowholidayis_weekend
2025-06-010NULLtrue
2025-06-021NULLfalse
2025-06-032NULLfalse
2025-06-043NULLfalse
2025-06-054NULLfalse
2025-06-065NULLfalse
2025-06-076NULLtrue
2025-06-080NULLtrue
2025-06-091NULLfalse
2025-06-102NULLfalse
2025-06-113NULLfalse
2025-06-124NULLfalse
2025-06-135NULLfalse
2025-06-146Yangi yiltrue

O'xshash masalalar

Konsol

Natijani ko'rish uchun so'rovni ishga tushiring.