我们说我有一个有两列的表,一列是" State"另一个是"州号"。
我需要列#34;州号"具有基于列"状态"的值的数字值,按字母顺序排列。
...示例
State = A is equals to State Number = 1
State = B is equals to State Number = 2
State = C is equals to State Number = 3
等等。
任何帮助都将不胜感激。
谢谢!
答案 0 :(得分:1)
不,除了将State Number
定义为auto_increment
之外,您无法自动执行此操作。你问的问题可以使用触发器完成,但MySQL
不支持递归触发器,因此它不是一个选项。
您可以使用UPDATE
条件执行CASE
并更新上述列
update tbl1
set `State Number` = case when state = 'A' then 1
when state = 'B' then 2
when state = 'C' then 3 end;