Mysql CURDATE给出错误
我有一个插入语句Mysql CURDATE给出错误,mysql,sql,date,mysqli,Mysql,Sql,Date,Mysqli,我有一个插入语句 $stmt = $mysqli->prepare("INSERT INTO numbertable (numbers, numdate, salesperson, color) VALUES (?, NOW(), ?, ?)"); 我的SELECT语句如下所示: $result = $mysqli->query("SELECT COUNT FROM numbertable WHERE DATE(numdate) == CURDATE()"); 运行select语
$stmt = $mysqli->prepare("INSERT INTO numbertable (numbers, numdate, salesperson, color) VALUES (?, NOW(), ?, ?)");
我的SELECT语句如下所示:
$result = $mysqli->query("SELECT COUNT FROM numbertable WHERE DATE(numdate) == CURDATE()");
运行select语句时,出现以下错误。有人知道那是什么吗
SELECT COUNT FROM numbertable WHERE DATE(numdate) == CURDATE()
LIMIT 0, 30
MySQL said: Documentation
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '== CURDATE()
LIMIT 0, 30' at line 1
在mySQL中,您需要
=
作为等号,而不是=
。应该是:
SELECT COUNT FROM numbertable WHERE DATE(numdate) = CURDATE()
其中日期(numdate)=CURDATE()
。SQL没有==
运算符。非常感谢,这解决了问题。我有点困惑,因为当我在PhpMyAdmin中运行代码时,我得到的结果是今天有6个受影响的行,这是真的。当我在phppage查询中运行我的代码时,我得到有507行(这是我数据库中的所有行)这是完全相同的查询:SELECT*FROM numbertable WHERE DATE(numdate)=CURDATE()当我使用时:SELECT COUNT FROM numbertable WHERE DATE(numdate)=CURDATE()我得到错误:致命错误:调用成员函数fetch\ U row()关于布尔运算:你能知道它是什么吗?计数是表中的一列吗?这是一个保留字,如果是caseholl,则应使用select`count`。不,这不是我数据库中的列。这真的很奇怪。你想做什么?计算所有结果?如果是,则应为count(*)