我在php $newtotal
中有一个动态变量。当此变量大于MAX数据库整数时,我想INSERT
$newtotal = 4000;
mysql_query("INSERT INTO mytable (`DATE`, `TOTAL`, `DBTOTAL`) VALUES ('2012-03-09', '1', '$newtotal') WHERE MAX(`DBTOTAL`) < '$newtotal'");
即。在我的数据库中,我的MAX(DBTOTAL)= 4050;
这不应该
INSERT
;当INSERT
更改为大于4050时,它也应该正确$newtotal
,但是我在任一变量号上都出现语法错误。在这里需要有关语法的帮助。 最佳答案
您不能在WHERE
语句中使用INSERT
子句。您将需要检查该值以查看是否要插入,并在满足条件的情况下进行插入。
例如:
$result = mysql_query("
SELECT MAX(DBTOTAL)
FROM table
");
list($max) = mysql_fetch_num($result);
if ($max < $newtotal) {
mysql_query("
INSERT INTO table (`DATE`, `TOTAL`, `DBTOTAL`)
VALUES ('2012-03-09', '1', '$newtotal')
");
}