MySQL将数据添加到现有字段
我有一个字段MySQL将数据添加到现有字段,mysql,field,updates,Mysql,Field,Updates,我有一个字段enq\u id——它当前包含以下数字: 80081 414365 567 现在,我需要以两种方式更新字段,首先我需要确定是否有任何数字长度超过6个字符(不应该有,但我需要检查)。然后,我需要在该字段上设置6个字符的字符限制,然后,最后,将0添加到任何enq_id的开头,长度不超过6个字符,使其成为6个字符 有什么想法吗?如果以下内容返回了您试图实现的结果: SELECT `enq_id`, IF(CHAR_LENGTH(`enq_id`) < 6,
enq\u id
——它当前包含以下数字:
80081
414365
567
现在,我需要以两种方式更新字段,首先我需要确定是否有任何数字长度超过6个字符(不应该有,但我需要检查)。然后,我需要在该字段上设置6个字符的字符限制,然后,最后,将0
添加到任何enq_id
的开头,长度不超过6个字符,使其成为6个字符
有什么想法吗?如果以下内容返回了您试图实现的结果:
SELECT
`enq_id`,
IF(CHAR_LENGTH(`enq_id`) < 6,
LPAD(`enq_id`,6,'0'),
SUBSTRING(`enq_id`,1,6)
) AS 'result'
FROM `some_table`
WHERE CHAR_LENGTH(`enq_id`) != 6
及
UPDATE`some_表`
设置'enq\u id`=LPAD('enq\u id`,6,'0')
其中字符长度(`enq\u id`)小于6
没问题。出于某种原因,我为长度大于6的记录添加了一个额外的条件。我正在更新代码。再次感谢!真的很感激。
UPDATE `some_table`
SET `enq_id` =
IF(CHAR_LENGTH(`enq_id`) < 6,
LPAD(`enq_id`,6,'0'),
SUBSTRING(`enq_id`,1,6))
WHERE CHAR_LENGTH(`enq_id`) != 6
SELECT `enq_id`,LPAD(`enq_id`,6,'0') AS 'result'
FROM `some_table`
WHERE CHAR_LENGTH(`enq_id`) < 6
UPDATE `some_table`
SET `enq_id` = LPAD(`enq_id`,6,'0')
WHERE CHAR_LENGTH(`enq_id`) < 6