mysql-更新日期字段(如果存在)

时间:2020-09-29 08:23:12

标签: php mysql

我有保存用户观看的预订号的查询。系统将始终显示每个用户的最后10个保留(按“ createDate”列排序),因此,如果在最后10个中已经有一些保留编号,则查询将不执行任何操作。

我想稍作更改,如果表中已经有预订号,则要用当前日期和时间更新字段“ createDate”。 如果不存在,则插入新行。

我应该改变什么?

$query = "
INSERT INTO user_last_view
            (userID,
             page,
             refid,
             mode) 
           SELECT ".$_SESSION['userDetails']['userID'].",
                  '".$page."',
                  ".$refID.", 
                  '".$mode."'
                  FROM dual
                  WHERE NOT EXISTS (SELECT *
                                           FROM (SELECT ulv.userID,
                                                        ulv.page,
                                                        ulv.refid
                                                        FROM user_last_view ulv
                                                        ORDER BY ulv.createdate
                                                        DESC LIMIT 10) x
                                           WHERE x.userID = ".$_SESSION['userDetails']['userID']."
                                                 AND x.page = '".$page."'
                                                 AND x.refid = ".$refID.");
";

$conn->query($query);

0 个答案:

没有答案