agiletiger / ojotas

The database-first ORM
MIT License
7 stars 4 forks source link

feature: optional filters #4

Open nicoabie opened 10 months ago

nicoabie commented 10 months ago

One cool thing about current ORMs out there is the ability to have optional filters

in sequelize something like:

model.find({where: {
  ...(someContidion && {someField: someValue})
});

in ojotas we could so something similar when writing sql

select * from user where name = :name and status = :status?

that should generate a type that has name as required and status as optional. if status is not provided, the AND statament should be transformed to remove that condition.

one could say that instead of removing the status condition it could be transformed to status = status. but that would only work for ANDs and not ORs so it is safer to always remove it if nor provided