根据同一个表中另一列SERIAL和YEAR_ADMITTED的值更新列REGNO。
SERIAL | REGNO | YEAR_ADMITTED | FULL_NAME
---------------------------------------------
0001 | | 2011 | LUM Anye
1009 | | 2014 | Hans Musah
答案 0 :(得分:1)
根据Fabricator的建议修改为包含where子句,因此您不会覆盖现有的REGNO。
UPDATE students SET REGNO = CONCAT( year_admitted, SERIAL )
WHERE REGNO IS NULL OR REGNO=''
如果它不是字符串
,您可能必须CAST
year_admitted
UPDATE students SET REGNO = CONCAT( CAST(year_admitted as CHAR), SERIAL )
WHERE REGNO IS NULL OR REGNO=''
答案 1 :(得分:0)
UPDATE `students` SET `REGNO` = ( SELECT CONCAT( YEAR( `year_admitted` ) , `SERIAL` ) )
WHERE SERIAL = SERIAL