如果数据存在则更新,否则插入,MySQL使用子查询或其他方法。
如果数据存在则更新,否则插入,MySQL使用子查询或其他方法。
这个问题已经有了答案:
- \'process\'是一种准备好的语句的方法
- \'QId\'和\'UnqId\'是子外键(只是索引)
我想通过子查询等方式使它成为 一个SQL语句(包括三个查询) 的一行
$get = $call->process("SELECT UnqId FROM table1 WHERE QId = ? AND UnqId = ?", array($_SESSION['Q'], $_SESSION['U'])); if($get) //if table exists { $call->process("UPDATE table1 SET col3 = ?, col4 = UTC_TIMESTAMP() WHERE QId = ? AND UnqId = ?", array('OK', $_SESSION['Q'], $_SESSION['U'])); } else { $call->process("INSERT INTO table1 VALUES (?, ?, ?, UTC_TIMESTAMP(), NULL, NULL, NULL, NULL)", array($_SESSION['Q'], $_SESSION['U'], 'OK')); }
admin 更改状态以发布 2023年5月25日