使用几乎动态的where子句进行选择

eulz3vhy  于 2021-10-10  发布在  Java
关注(0)|答案(0)|浏览(130)

我正在用node/express构建一个api,并使用pg和postgres。在某种程度上,我试图构建一个如下所示的查询:

SELECT * FROM user_dog_view
WHERE dog_name = X AND dog_gender = Y AND dog_race = Z;

(x、y、z表示来自request.body或查询字符串的信息)
问题是:我希望我的查询忽略where子句中的一个条件,其中x、y或z未定义或为null(表示request.body或查询字符串不完整)。e、 g,如果y未定义,我希望查询如下:

SELECT * FROM user_dog_view
WHERE dog_name = X AND dog_race = Z;

我试图研究coalesce函数,但它似乎不能满足我的需要。现在,我想知道我是否应该尝试使用javascript来处理一些复杂的条件,但我不确定这是否是最好的主意?任何psql(或js)对此的洞察都将不胜感激。谢谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题