How to use queries to get list of pages instead of blocks?

I want to have a query block that would contain a list of pages i’ve created during a month in order to add them to my ‘contents’ page and classify them.
the table should look like this:

page title

[[page1]]
[[page2]]

end
i would then take those items by dragging and place into my hierarchical list…
Using “all pages” tab isn’t really convenient for that purpose.
I’m new to Logseq, so i’d like to hear about some other ways to solve similar problem with classification of new pages that can be used

I found how to get list of pages by name
but i need to get all pages created between a given time period
how can i do that?

The issue is that a page’s created time is stored as a UNIX timestamp in the database. So if you need to query pages created between two time periods, then you need to pass both those time periods as UNIX timestamps to it.

#+BEGIN_QUERY
{:title "Pages created between two time periods"
 :query [:find (pull ?p [*]) 
         :in $ ?start ?end
         :where
         [?p :block/name _]
         [?p :block/created-at ?t]
         [(>= ?t ?start)]
         [(<= ?t ?end)]]
 :inputs [1657885810000 1658404210000]}
#+END_QUERY

If you want something automatic, then you can use this query to get a list of pages created in the last 30 days.

#+BEGIN_QUERY
{:title "Pages created past 30 days"
 :query [:find (pull ?p [*]) 
         :in $ ?end
         :where
         [?p :block/name _]
         [?p :block/created-at ?t]
         [(- ?end 2629800000) ?start]
         [(>= ?t ?start)]
         [(< ?t ?end)]]
 :inputs [:end-of-today-ms]}
#+END_QUERY