我已经用 PostgreSQL 测试了这个选择,它似乎工作正常 - 返回一个带有 resourceId 的项目列表:resourceIdList
(如果有的话)。如果:resourceIdList
为 null - 则返回所有这些。
select b.resourceid,
b.datecreatedutc as basecreated,
b.datedeletedutc as basedeleted
from productbasetable b
where b.datedeletedutc is null
and case
when :resourceIdList is not null
then b.resourceid in :resourceIdList
else true
end;
当我尝试在SqlDelight中使用它时会出现问题:生成的代码有问题when :resourceIdList is not null
(encode
fun 需要 T 类型,而不是 List)
有没有另一种方法来检查语句:resourceIdList
之前是否为空/空?IN