MySQL IFNULL + PHP准备语句

时间:2011-10-10 11:46:29

标签: php mysqli

我有一份准备好的声明:



    $query = "Select id, start_date, IFNULL(end_date,start_date) as end_date 
    FROM table WHERE id=?";
    $stmt = $conn->prepare($query);
    $stmt->bind_param("i",  $id);
    if($stmt->execute())    
    {
    $stmt->bind_result($var1, $var2,$var3);
    while ($stmt->fetch()) {
    printf ("My record: %s %s %s", $var1, $var2,$var3);
    }
    }

字段类型: id = int(11),end_date =(date),start_date =(date) 我在表中记录了这条记录:


    id,start_date,end_date
    1,2011-09-17,NULL

当我在本地服务器(PHP版本5.3.3-7 + squeeze3)中执行此操作时,它返回:

`My record: 1 2011-09-17 2011-09-17`

但是当我将它移动到我的主机服务器(PHP Version 5.2.5)时,它返回空字符串和零的字段。

My record: 0

但是,如果我删除IFNULL返回:

My record: 1 2011-09-17

导致这种情况的原因是什么?

0 个答案:

没有答案