将 table 中的日期与明天的日期进行比较
comparing dates in a table with tomorrow's date
我正在尝试将 table 中的日期与明天的日期进行比较。
我收到错误:语法错误或访问冲突:1064 Erreur de syntaxe prés de 'DAY(start_datetime)=26'。
我试过以下方法:
$year= date('Y',strtotime('tomorrow'));
$month= date('m',strtotime('tomorrow'));
$day= date('d',strtotime('tomorrow'));
$stmt4 = $pdo1->query("SELECT time_format(start_datetime,'%H:%i') from ea_appointments where
YEAR(start_datetime)= ".$year." and MONTH(start_datetime)=".$month."and
DAY(start_datetime)=".$day);
先检查您的查询。存在语法错误 - AND
运算符后缺少 space。
$stmt4 = $pdo1->query("SELECT time_format(start_datetime,'%H:%i') from ea_appointments where
YEAR(start_datetime)=".$year." and MONTH(start_datetime)=".$month." and
DAY(start_datetime)=".$day);
我还建议对 SELECT 和 WHERE 等保留关键字使用大写字母,这样可以提高可读性。相同的查询可能如下所示:
$stmt4 = $pdo1->query("
SELECT TIME_FORMAT(start_datetime,'%H:%i')
FROM ea_appointments
WHERE YEAR(start_datetime)=".$year."
AND MONTH(start_datetime)=".$month."
AND DAY(start_datetime)=".$day
);
您还可以依赖 SQL 日期和时间操作。
在 MySQL 的情况下,查询将如下所示:
SELECT TIME_FORMAT(start_datetime,'%H:%i')
FROM ea_appointments
WHERE DATEDIFF(start_datetime, DATE_ADD(CURDATE(), INTERVAL 1 DAY)) = 0;
我正在尝试将 table 中的日期与明天的日期进行比较。
我收到错误:语法错误或访问冲突:1064 Erreur de syntaxe prés de 'DAY(start_datetime)=26'。
我试过以下方法:
$year= date('Y',strtotime('tomorrow'));
$month= date('m',strtotime('tomorrow'));
$day= date('d',strtotime('tomorrow'));
$stmt4 = $pdo1->query("SELECT time_format(start_datetime,'%H:%i') from ea_appointments where
YEAR(start_datetime)= ".$year." and MONTH(start_datetime)=".$month."and
DAY(start_datetime)=".$day);
先检查您的查询。存在语法错误 - AND
运算符后缺少 space。
$stmt4 = $pdo1->query("SELECT time_format(start_datetime,'%H:%i') from ea_appointments where
YEAR(start_datetime)=".$year." and MONTH(start_datetime)=".$month." and
DAY(start_datetime)=".$day);
我还建议对 SELECT 和 WHERE 等保留关键字使用大写字母,这样可以提高可读性。相同的查询可能如下所示:
$stmt4 = $pdo1->query("
SELECT TIME_FORMAT(start_datetime,'%H:%i')
FROM ea_appointments
WHERE YEAR(start_datetime)=".$year."
AND MONTH(start_datetime)=".$month."
AND DAY(start_datetime)=".$day
);
您还可以依赖 SQL 日期和时间操作。 在 MySQL 的情况下,查询将如下所示:
SELECT TIME_FORMAT(start_datetime,'%H:%i')
FROM ea_appointments
WHERE DATEDIFF(start_datetime, DATE_ADD(CURDATE(), INTERVAL 1 DAY)) = 0;