#821

Пренапиши филтъра по година, така че индексът наистина да заработи

В оригиналната заявка филтърът по година е изразен като «извлечи годината от created_at и сравни с 2024». Проблемът: колоната е обвита във функция, планировчикът не може да използва индекса по created_at и пада до пълно сканиране на таблицата. Пренапиши филтъра като диапазон от дати, така че планировчикът да види b-tree индекса и да го подхване (тази форма на условие се нарича «sargable»). Върни идентификатора, сумата и датата на създаване на поръчките, направени през 2024 година, сортирай по идентификатор.

Примерен очакван изход

Така изглежда правилният отговор — броят редове е негов собствен, не е задължително да съвпада с таблиците в схемата.

idtotalcreated_at
11002024-01-05T00:00:00+00:00
21502024-01-12T00:00:00+00:00
32002024-01-20T00:00:00+00:00

Резултатът от заявката ти ще се покаже тук