Php 在此格式的MYSQL中搜索日期03/17/10.11:22:45
我有一个脚本,每小时自动用数据填充mysql数据库。它填充日期字段,如03/17/10.12:34:11等 我正在从搜索脚本中一次提取一天的数据 如果我使用Php 在此格式的MYSQL中搜索日期03/17/10.11:22:45,php,mysql,datetime,Php,Mysql,Datetime,我有一个脚本,每小时自动用数据填充mysql数据库。它填充日期字段,如03/17/10.12:34:11等 我正在从搜索脚本中一次提取一天的数据 如果我使用 SELECT * FROM call_logs WHERE call_initiated between '03/17/10.12:00:00' and '03/17/10.13:00:00' 它可以工作,但是当我尝试添加其余的搜索参数时,它会忽略call_initiated字段 SELECT * FROM call_lo
SELECT *
FROM call_logs
WHERE call_initiated between '03/17/10.12:00:00' and '03/17/10.13:00:00'
它可以工作,但是当我尝试添加其余的搜索参数时,它会忽略call_initiated字段
SELECT *
FROM call_logs
WHERE caller_dn = '2x9xxx0000' OR called_dn = '2x9xxx0000'
AND call_initiated between '03/17/10.12:00:00' and '03/17/10.13:00:00'
^--我算出了几个数字。我也尝试过不使用between函数,并使用>=- 尝试在OR语句周围使用括号 ... 其中(呼叫者\u dn='2x9xxx0000'或被叫者\u dn='2x9xxx0000')和呼叫\u在'03/17/10.12:00:00'和'03/17/10.13:00:00'之间发起
- 使用IN运算符而不是OR ... 其中,呼叫者在'03/17/10.12:00:00'和'03/17/10.13:00:00'之间启动('2x9xxx0000','2y9yyy000')和呼叫
- 尝试在OR语句周围使用括号 ... 其中(呼叫者\u dn='2x9xxx0000'或被叫者\u dn='2x9xxx0000')和呼叫\u在'03/17/10.12:00:00'和'03/17/10.13:00:00'之间发起
- 使用IN运算符而不是OR ... 其中,呼叫者在'03/17/10.12:00:00'和'03/17/10.13:00:00'之间启动('2x9xxx0000','2y9yyy000')和呼叫
SELECT * FROM `call_logs` WHERE (caller_dn='2x9xxx0000' OR called_dn='2x9xxx0000') AND call_initiated BETWEEN '03/17/10.12:00:00' and '03/17/10.13:00:00';
OR语句更可能是问题,因为OR对左边的语句进行评估,看到它是真的,它不关心右边的站点上有什么,因为只要其中一个语句是真的,它就认为整个语句都是真的 请阅读OR运算符 你的陈述应该是
SELECT * FROM `call_logs` WHERE (caller_dn='2x9xxx0000' OR called_dn='2x9xxx0000') AND call_initiated BETWEEN '03/17/10.12:00:00' and '03/17/10.13:00:00';
啊,简单的解决方案,呼叫者字段周围的巴拉那人就做到了。。事实上,我正在试验这些。。谢谢“我实际上是在试验这些东西。”理解为什么这样做很重要,就像任何编程问题一样,如果你不理解为什么,它会再次发生。。请参阅下面的解释。啊,简单的解决方案,呼叫者字段周围的巴拉那人就做到了。。事实上,我正在试验这些。。谢谢“我实际上是在试验这些东西。”理解为什么这样做很重要,就像任何编程问题一样,如果你不理解为什么,它会再次发生。。见下面的解释。