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

标签 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 再次为空。

我不知道为什么。如果有人能帮助我理解这一点,我将非常感激!谢谢!

最佳答案

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

UPDATE test SET column1 = COALESCE(?,column1)

关于php - 需要在 PHP 中使用 SQL 表达式的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28176969/

相关文章:

php - 如何防止写入已启动的 PHP session ?

mysql - "key column doesn' t 存在于表中”

sql - 在 dbplyr 管道中使用类似 grepl 的字符串匹配

php - codeigniter group by 不起作用

php - 使用 jquery 保持旧状态

php - imagerotate() 不起作用

php - mcrypt 字符导致 mysql 错误

java - 使用 Java 通过 SSH 同步 MySQL 数据库

java - [Java] 插入 SQL 时出错,表中自动递增 - userId

查找特定表的外键的 SQL 脚本?