gpt4 book ai didi

php - mysql 函数 IF(DAY(customers_dob) = DAY(current_date), true, false) AS 今天不适用于 PDO

转载 作者:行者123 更新时间:2023-11-29 23:30:14 26 4
gpt4 key购买 nike

以下查询

$stmt = $db->query("
SELECT CONCAT(customers_firstname, ' ', customers_lastname) name,
customers_dob AS dob,
IF(DAY(customers_dob) = DAY(current_date), true, false) AS today,
IF(MONTH(customers_dob) = MONTH(current_date), true, false) AS month,
YEAR(current_date) - YEAR(customers_dob) AS year
FROM " . TABLE_CUSTOMERS . "
WHERE MONTH(customers_dob) = MONTH(current_date)
AND DAY(customers_dob) >= DAY(current_date)
ORDER BY customers_dob
");
$birthdays = $stmt->fetchAll();

与 PHP 中的 mysql 扩展配合良好,并在 phpMyAdmin 中给出结果。

使用 PDO 我只能得到这个数组

Array
(
[name] => Max Mustermann
[0] => Max Mustermann
[year] => 44
[1] => 44
)

缺少“今天”和“月份”键。

我做错了什么?

最佳答案

您没有正确地为名字和姓氏的连接设置别名 - 您缺少 AS 关键字。变化:

SELECT   CONCAT(customers_firstname, ' ', customers_lastname) name,

至:

SELECT   CONCAT(customers_firstname, ' ', customers_lastname) AS name,

关于php - mysql 函数 IF(DAY(customers_dob) = DAY(current_date), true, false) AS 今天不适用于 PDO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26641062/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com