仅当mysql枚举值设置为'是'

时间:2014-05-07 07:52:35

标签: php mysql

我正在尝试运行插入查询以仅在我的表中的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 '";

2 个答案:

答案 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 ...