Sql 使用get_results()执行查询时返回不同的结果
我有一个使用WordPress默认DB函数运行的SQL查询Sql 使用get_results()执行查询时返回不同的结果,sql,database,wordpress,Sql,Database,Wordpress,我有一个使用WordPress默认DB函数运行的SQL查询get\u results 像这样 查询返回了错误的结果(我认为它忽略了WHERE子句中的date\u time)。但是,当我在phpmyadmin中手动运行相同的查询时。相同的查询给出正确的结果。我不知道这里发生了什么。你应该用来包装日期文字。: SELECT *, 'cash' AS mop FROM wp_wpsp_cash_transactions WHERE 1=1 AND DATE(date_time) > '201
get\u results
像这样
查询返回了错误的结果(我认为它忽略了
WHERE
子句中的date\u time
)。但是,当我在phpmyadmin中手动运行相同的查询时。相同的查询给出正确的结果。我不知道这里发生了什么。你应该用来包装日期文字。
:
SELECT *, 'cash' AS mop
FROM wp_wpsp_cash_transactions
WHERE 1=1 AND DATE(date_time) > '2018-10-07' -- comparing with date not int
UNION ALL
SELECT *, 'bank' AS mop
FROM wp_wpsp_bank_transactions
WHERE 1=1 AND DATE(date_time) > '2018-10-07'
ORDER BY date_time DESC;
原因:
SELECT 1
WHERE NOW() > '2019-10-07'
-- 0 rows
SELECT 1
WHERE NOW() > 2019-10-07 -- implicit conversion
-- 1
是的,非常感谢你。我犯了这么愚蠢的错误。我没有注意到这一点。
SELECT 1
WHERE NOW() > '2019-10-07'
-- 0 rows
SELECT 1
WHERE NOW() > 2019-10-07 -- implicit conversion
-- 1