2014-10-09 83 views
0

我想知道某个日期是befere还是在一个表中的一个字段后。所以我写了两个查询来测试它。在sql数据库返回null的Datediff查询

首先是这样的:

SELECT * FROM tasks WHERE name='Tareas'; 

这让我:

+--------+----------+-----------------------+------------+-------------+----------------------------+-----------+---------+-------+                                    
| name | user  | proyect    | start_date | update_date | description    | status | percent | keyid |                                    
+--------+----------+-----------------------+------------+-------------+----------------------------+-----------+---------+-------+                                    
| Tareas | spruebas | Y otro proyectito mas | 2014-09-18 | 2014-09-18 | Para que vea algo el pobre | Pendiente |  0 |  5 |                                    
+--------+----------+-----------------------+------------+-------------+----------------------------+-----------+---------+-------+ 

于是我尝试用这个测试查询:

SELECT DATEDIFF('2014-10-09','update_date') AS pepe FROM tasks WHERE name='Tareas'; 

然而,这将返回佩佩为NULL。我究竟做错了什么?我不应该得到日期的差异(正面还是负面)?我知道日期格式是相同的。

回答

0

字符串'update_date'不是有效日期。在引用列时,如果与reserved word冲突,则省略引号或使用反引号。

你想要的是:

DATEDIFF('2014-10-09',update_date) 
+0

非常感谢您!它现在工作了! – aarelovich 2014-10-09 16:53:34