2012-08-02 260 views
0

我有一个列名为date_stamp并且其数据类型为“date”的PostgreSQL表。
我需要执行下面的查询,它不工作。谁能帮忙?谢谢。
(我使用PHP)在PostgreSQL中to_date函数问题

$DS = date('d m Y' ,$data['time_stamp']);  

$query = "SELECT id from ".$this->table_ud." WHERE user_id=43 AND date_stamp=to_date(".$DS.",YYYY MM DD)"; 
+0

而你的错误是什么? – 2012-08-02 08:45:28

+0

得到了答案。问题不在于PostgreSQL。 to_date()工作得很好。 – Thili 2012-08-02 09:14:20

回答

1

没有必要使用to_date

你可能只是做:

$DS = date('Y-m-d' ,$data['time_stamp']);  
$query = "SELECT id from ".$this->table_ud." WHERE user_id=43 AND date_stamp='$DS'"; 
+0

是否确定to_date()不是必需的?起初,我试图做你上面提出的建议,但没有奏效。我的猜测是php date()函数返回一个字符串,并且表中的date_stamp列的类型为date,并且您无法将字符串类型与日期进行比较。 – Thili 2012-08-03 09:55:57