我有多个嵌套的 where 条件,并且希望生成它们而无需使用 typeORM 进行太多代码重复。
SQL where 条件应该是这样的:
WHERE "Table"."id" = $1
AND
"Table"."notAvailable" IS NULL
AND
(
"Table"."date" > $2
OR
(
"Table"."date" = $2
AND
"Table"."myId" > $3
)
)
AND
(
"Table"."created" = $2
OR
"Table"."updated" = $4
)
AND
(
"Table"."text" ilike '%search%'
OR
"Table"."name" ilike '%search%'
)
Run Code Online (Sandbox Code Playgroud)
但似乎FindConditions不可能让它们嵌套,所以我必须AND在 FindConditions 数组中使用所有可能的组合。并且不可能将其拆分为.where()并.andWhere()导致andWhere无法使用对象文字。
是否有另一种可能性可以在不使用原始 SQL 的情况下使用 typeORM 实现此查询?