在PHP中使用SQL表达式需要帮助

时间:2015-01-27 17:59:22

标签: php mysql sql

如果值为空,我试图省略更新列,但如果它不为空则希望更新。

到目前为止,我带来了以下表达式

$foo = NULL;


$query = "UPDATE test SET column1 = IF('{$foo}'='',coloumn1,'' )";
$result = mysqli_query($handle,$query);
if(!$result){
    echo mysqli_error($handle);
}

我面临的问题是当我将$ foo设置为实际值时,coloumn1再次为空。

我不确定为什么。如果有人能帮我理解这一点,我真的很感激!谢谢!

1 个答案:

答案 0 :(得分:0)

如果您的值确实为空(非空),您可能需要考虑使用COALESCE

UPDATE test SET column1 = COALESCE(?,column1)