簡體   English   中英

如果更新值是特定字符串,則跳過以更新表字段

[英]Skip to update the table field if the update value is the specific string

我可以檢查更新值是否為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的值,所以我跳過了此字段

這是一個非常開放的問題。 這取決於您如何為腳本構建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;';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM