我正在设置一个 REST
服务,我正在使用 postgres
作为数据存储。我想知道如何设置 postgres
查询以使用可选参数。即:
SELECT * from users
where hair_color = $1
and eye_color = $2
$1 和 $2 来自请求:[req.body.hair_color, req.body.eye_color]
如果用户没有传入 eye_color
怎么办,在那种情况下我想要所有眼睛颜色。我假设我不必在这里制作一堆 if/else
语句。创建此查询的简洁方法是什么?
最佳答案
在这里,我将 hair_color
和 eye_color
设为可选。 (传递您的语言的 NULL 等价物)。
SELECT * from users where
($1 is null or hair_color = $1) and
($2 is null or eye_color = $2);
关于postgresql - 如何在可选参数上查询 postgres?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21062148/