0

我可以检查更新值是否为N,然后跳过此字段吗?

应该在 PHP 或 MySQL 的代码中完成吗?

流程是:

update store set book1 = 'Y', book2 = 'Y', book3 = 'N', book4 = 'N', book5 = 'N' where id =1个;

update store set book1 = 'Y', book2 = 'Y' where id =1个;

因为 book3、book4 和 book5 会更新为 的值N,所以我跳过了这个字段

4

1 回答 1

1

这是一个非常开放的问题。这取决于您如何为脚本构建 SQL 代码,但是如果您想更改 SQL,那么在 PHP 中执行将是您的最佳选择。

作为一个简单的示例,您可以执行以下操作:

$books = array ( 'book1' => 'Y',
                'book2' => 'Y',
                'book3' => 'N',
                'book4' => 'N',
            );

$updates = array();         

foreach ($books as $book => $value) {
    if ($value != 'N') {
        $updates[] = "$book  = '$value'";
    }
}

$update = implode(', ', $updates);
$query = 'update store set '.$update.' where id =1;';
于 2012-06-27T01:59:36.067 回答