搜索一个表然后更新一个表
这样是不正确的
UPDATE appbricks_department
SET rank = '2'
WHERE parent_id in (SELECT id FROM appbricks_department WHERE parent_id IS NULL) ;
会报错
You can't specify target table 'student' for update in FROM clause
正确的写法
UPDATE appbricks_department
SET rank = '2'
WHERE parent_id in
(SELECT * FROM (SELECT id FROM appbricks_department WHERE parent_id IS NULL) a );
字符串拼接的语句
UPDATE test SET user= CONCAT(user,',phpchina') WHERE id= '2';
最终我是用的语句记录一下:(感觉应该有一种更简单的,就是表自身进行连接,但是不会,等以后会了,再进行补充)
UPDATE student set certificateId = CONCAT(certificateId,"。"),visible = 0 WHERE idCard in (SELECT * FROM (SELECT idCard FROM student WHERE certificateId LIKE "V%" AND major_id in (2,5)) a) and major_id in (1,4) and certificateId LIKE "P%" and certificateId not LIKE "%。%"