3 回答

TA貢獻1811條經驗 獲得超5個贊
只是建議 LIKE 對字符串起作用,通常與 wild char 一起使用
如果您需要完全匹配,那么可能是您需要的
,然后使用 equal
UPDATE `users`
SET `users`.`first_name`=null,
`users`.`last_name`=null,
`users`.`age`=null,
`users`.`role`=null,
`users`.`gender`= 3
WHERE `users`.`id` = 10
如果您需要模式匹配,請使用 like 和 wildchar 例如;
UPDATE `users`
SET `users`.`first_name`=null,
`users`.`last_name`=null,
`users`.`age`=null,
`users`.`role`=null,
`users`.`gender`= 3
WHERE `users`.`id` LIKE '%10%'

TA貢獻1828條經驗 獲得超13個贊
但我自己發(fā)現了問題:我比較了兩個字符串(一個硬編碼的字符串和一個由我的構建器生成的字符串)它們具有相同的長度,所以我逐個字符地打印每個字符串,然后我發(fā)現了問題!一些字符等于 null 所以 SQL 不喜歡它并產生錯誤但是當我打印它時 null 字符被忽略了......

TA貢獻1946條經驗 獲得超3個贊
有時引號 ' 不被 mysql 接受,但你可以嘗試這個簡單的沒有 qoutes
UPDATE users
SET first_name=null,
last_name=null,
age=null,
role=null,
gender='3'
WHERE id LIKE '%10%'
并確保您的數據類型正確, null 也等于空,您可以嘗試將其更改為 '' like first_name=''
添加回答
舉報