0
下面的代碼只更新一個字段爲空時,對於給定的ID。SQL的更新域只有當空ELSE檢查下一行
$sql="UPDATE TABLE7 set SCORE1= $high where SCORE1 IS NULL AND ID = 9";
如何調整代碼,以便它只有當空更新某一行,如果不爲空,檢查下一行一定ID = 9等 喜歡的東西:
$sql="UPDATE TABLE7 set
IF SCORE1 IS NULL THEN SCORE1= $high,
ELSE //MEANING SCORE1 IS NOT NULL
IF SCORE2 IS NULL THEN SCORE2= $high,
ELSE // MEANING SCORE2 IS NOT NULL
IF SCORE3 IS NULL THEN SCORE3= $high
ELSE //MEANING ALL FIELDS ARE NOT NULL
THROW ERROR (ECHO ‘All FIELDS ARE FILLED’)
WHERE ID = 9"
謝謝您。
編輯
我要的是,更新的第一個NULL字段後,其他字段將不會被更新。
也就是說,如果SCORE1 = NULL,則SCORE1 = $高,但SCORE2和SCORE3不應該更新,無論是空或沒有。
我只想只更新第一個NULL字段。我怎樣才能做到這一點?謝謝。
不錯的工作。您的代碼更新所有字段,即設置SCORE1 = $高,SCORE2 = $高,SCORE3 = $高。 我想要的是,更新第一個NULL字段後,其他字段將不會更新。 即如果SCORE1 = NULL,則SCORE1 = $高,但SCORE2和SCORE3不應該更新,無論是空或沒有。 我只想只更新第一個NULL字段。我怎樣才能做到這一點?謝謝。 – user3104096
添加其他條件。我更新了我的答案。我認爲這很容易適應。 –
工程很好。謝謝 – user3104096