回答

收藏

使用条件逻辑:检查记录是否存在;如果有,请更新它;如果没有,请创建它

技术问答 技术问答 274 人阅读 | 0 人回复 | 2023-09-12

昨晚问了这个问题,得到了合并信息(在postgresql不可用)。我愿意尝试建议的解决方案,但我只是想知道为什么条件逻辑不能完成。
0 Y# ^) H5 u  n/ n我已经澄清了这个问题,所以也许会更容易理解。* r5 R' J7 K( f
我有一个查询,将数据插入表中。但每次都在创建新的记录。有没有办法检查线是否先存在,然后是否存在?UPDATE,是否不存在INSERT?* o2 T3 K" u2 O
$user = 'username';$timestamp = date('Y-m-d G:i:s.u');$check_time = "start"; //can also be stop$check_type = "start_user"; //can also be stop_user$insert_query = "INSERT INTO production_order_process_log (   production_order_id,production_order_process_id,$check_time,$check_type)VALUES ( '$production_order_id','$production_order_process_id','$timestamp','$user')";这个想法是,该表将记录签入和签出值(production_order_process_log.start和production_order_process_log.stop)。因此,在记录签字时间戳之前,检查是否应检查$production_order_process_id已经存在了。如果它确实存在,时间戳可以进入stop并$check_type能stop_user。否则,他们可以留下来start和start_user。2 Q6 c6 @2 c* @7 B
我基本上想避免这个结果。
" ]3 D% N" K  d1 u. R( _* |    ---- --------------------- -------------------------------- -------------------- ------------------- ------------- ------------- | id | production_order_id |   production_order_process_id  |        start       |        stop       | start_user  |  stop_user  | ---- --------------------- -------------------------------- -------------------- ------------------- ------------- ------------- | 8  |233333                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |                                                                                                                                                                                                                                                                                                                                                                                                              |  12 july 03:23:23  | NULL              | tlh         |  NULL       | ---- --------------------- -------------------------------- -------------------- ------------------- ------------- ------------- | 9  |233333                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |                                                                                                                                                                                                                                                                                                                                                                                                              | NULL               | 12 july 03:45:00  | NULL        |  tlh        | ---- --------------------- -------------------------------- -------------------- ------------------- ------------- ------------- 非常感谢您帮助我避免使用它postgresql逻辑完成这项任务。
5 }7 U7 d2 j0 r' R: ]1 [4 r                                                                6 |; `! A* H* z
    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则