我正在尝试运行插入查询以仅在我的表中的certian枚举值设置为yes时插入NOW()时间和日期。
我的表格有4列'form1_completed','form2_completed','form3_completed','form4_completed' 列将为是或否。
我正在使用此查询尝试将当前时间和日期插入数据库,其插入但它并没有注意where子句而且只是插入,有人可以告诉我我做错了什么
$query2 = "IF (SELECT * FROM `supplier_session` WHERE `form1_completed` = 'Yes' AND `form2_completed` = 'Yes' AND `form3_completed` = 'Yes' AND `form4_completed` = 'Yes') INSERT INTO `supplier_session` (`completed_date`) VALUES (NOW());
WHERE `user_IP` = '$ipaddress '";
答案 0 :(得分:0)
而不是
WHERE `form1_completed` = Yes
使用
WHERE `form1_completed` = 'Yes'
答案 1 :(得分:0)
我认为应该是:
IF EXISTS (SELECT * FROM ...) INSERT INTO ...
当子查询返回任何行时, EXISTS (subquery)
为真。
或者你可以这样做:
IF (SELECT COUNT(*) FROM ...) INSERT INTO ...