mysql - SQL如何添加前导0
问题描述
任何帮助将不胜感激。我对 mySQL 很陌生,并且认为必须有一种更简单的方法来更新我的数据库。
所以我的问题是我有许多没有前导零的记录,但我需要任何记录中的字符总数为 5。
例如 6930 实际上应该是 06930
我遇到了这段代码,但我无法让它正常工作,谁能指出我正确的方向。
UPDATE `it_asset_register`.`tab_id_master`
SET tab_id_master.ID = LEFT('00000', 5-LEN(tab_id_master.ID)) + tab_id_master.ID
WHERE ID = '8407' AND LEN(tab_id_master.ID)<5 AND Len(tab_id_master.ID)>0;
谢谢
解决方案
LPAD应该在这里完成工作:
SELECT LPAD ('123', 5, '0');
00123
SELECT LPAD ('12345', 5, '0');
12345
尝试:
UPDATE `it_asset_register`.`tab_id_master`
SET tab_id_master.ID = LPAD (tab_id_master.ID, 5, '0')
WHERE ID = '8407' AND LENGTH(tab_id_master.ID)<5 AND LENGTH(tab_id_master.ID)>0;
推荐阅读
- angular - Angular @Optional 指令注入被忽略
- python - 检查列表的元素是否是同一列表中其他列表元素的子元素
- reactjs - 由于 Firebase 身份验证流程导致的循环依赖
- spring - Spring Boot REST 部署:我们需要 TomCat 吗?
- java - gitignore 文件不隐藏 github 的 .idea 目录
- python - Django,“django.contrib.auth.views”没有属性“登录”
- python - 气流 - 告诉 DAG 跳过每月 2 日的处理
- tesseract - Tesseract 给出警告信息
- java - 通过调用定义 WebElement 路径的方法在 JUnit @Test 中选择 WebElements
- amazon-web-services - AWS S3 上的静态 Web 托管给了我“403 权限被拒绝”