我有一个名为user的表,它的字段类型设置为privs。
此字段的允许值为:“添加”、“编辑”、“删除”、“全部”。
我应该执行什么样的SQL查询来将值'EDIT'添加到给定行的字段privs?但前提是还没有这样的价值。
编辑:
我试过:
更新用户集
privs=concat(privs,'EDIT')
但我犯了个错误:
第1行“privs”列的数据被截断/
之后,并不是所有行的privs字段都有编辑值。

最佳答案

看起来MySQL可以添加第二个EDIT。但是,它确实要求列表以逗号分隔:

update  user
set     privs = concat(privs, if(length(privs)>0,',',''), 'EDIT')
where   id = 42

Example at SQL Fiddle.

关于mysql - 如何在mysql的SET字段中添加值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16439573/

10-09 07:37