当行值不等于特定值时更新表

时间:2018-06-22 09:05:41

标签: mysql sql node.js

我有一个这样的物体

{ emId: '1', emEmail: 'sreepurna@xxx.com' }

我在后端使用nodejs,在数据库中使用mysql。我只想在我的值不等于特定值时更新表。是否有可能在查询中编写此代码。

我尝试了一些sql语句,但是它不起作用:

let sql = `UPDATE details SET name = CASE WHEN '${req.body.emName}' != 'hi' THEN ${req.body.emName} END where id=${req.body.emId}`;

1 个答案:

答案 0 :(得分:0)

SQL语言中没有undefined这样的东西,您必须通过JavaScript验证值

if(req.body.emName){
  // This code block will run when req.body.emName contains value and is not undefined or null
  let sql = `UPDATE details SET name = CASE WHEN '${req.body.emName}' THEN ${req.body.emName} END where id=${req.body.emId}`;
}else{
  // req.body.emName is either empty/undefined or null
  // ...
}