Complex filter issue

Hi,
I have a need to build a complex filter for my application, This is a real-estate app which enables users (realtors) to define their real-estate interests like
1- Location - region of operation within a city
2- Real estate category (residence, land, commercial property, etc…).
3- Real-estate sub-categories
Example:
Residence category can be a house, apartment, etc…
Land category can have (Residence land, farm, commercial land, etc

What I want to do is to create a filter screen show shows matching posts / ads based on user preference, as well as enable user to do additional filtering based on the defined preference

For example, if the user if only focused on commercial and farm lands within city A , the filter screen will show matching lands with each sub-category. use can also filter based on farm or commercial lands

Is this doable within Adalo? Can this be done using a custom component?

I am wondering if there is a way to do a query on the database directly based on the filters?

Thanks