Node.js 基于可选请求参数的查询

Node.js 基于可选请求参数的查询,node.js,express,Node.js,Express,我在和博士后和快递打交道,我有一个小问题,我想不通。 用户可以请求id或邮政编码(以及3个以上参数)。 现在,我希望查询能够在查询中传递id,如果用户请求,还可以传递邮政编码或其他3个参数。 代码如下所示: app.get('/websites/:id', async (req, res) => { try { const { id , zipcode } = req.params; const website = await pool.query('SELECT *

我在和博士后和快递打交道,我有一个小问题,我想不通。 用户可以请求id或邮政编码(以及3个以上参数)。 现在,我希望查询能够在查询中传递id,如果用户请求,还可以传递邮政编码或其他3个参数。 代码如下所示:

app.get('/websites/:id', async (req, res) => {
  try {
    const { id , zipcode } = req.params;
    const website = await pool.query('SELECT * FROM website WHERE id =$1 OR zipcode = $2', [
      id,zipcode
    ]);
    res.json(website.rows[0]);
  } catch (err) {
    console.log(err.message);
  }
});

有时,用户可能无法传递邮政编码或其他参数。在这种情况下,我必须在查询中为if-else创建一个很长的if-else语句。 我如何处理这种情况

TLDR;要根据用户询问的内容使用多个WHERE或

谢谢大家!