You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求编写SQL查询:为B1/B2前缀的modelName字段末尾数字前加0

处理modelName字段的SQL查询方案

需求回顾

  • 对models表中modelName字段:
    • 若值以字母+数字开头(如B1-xxx、C1-xxx),在最后一位字符前插入0(例:B1-01-A-1 → B1-01-A-01)
    • 若值以单个字母开头(如A-xxx),保持原字符串不变

查询语句(MySQL)

查看转换结果(不修改原数据)

SELECT
  modelName,
  CASE
    WHEN modelName REGEXP '^[A-Za-z][0-9]-' THEN
      CONCAT(LEFT(modelName, LENGTH(modelName) - 1), '0', RIGHT(modelName, 1))
    ELSE
      modelName
  END AS formatted_modelName
FROM models;

直接更新原表数据

UPDATE models
SET modelName = CONCAT(LEFT(modelName, LENGTH(modelName) - 1), '0', RIGHT(modelName, 1))
WHERE modelName REGEXP '^[A-Za-z][0-9]-';

逻辑说明

  1. 正则匹配:REGEXP '^[A-Za-z][0-9]-'精准识别需要处理的字符串(以字母+数字+横杠开头)
  2. 字符串拆分拼接:
    • LEFT(modelName, LENGTH(modelName)-1)截取除最后一位外的所有内容
    • RIGHT(modelName, 1)提取最后一位字符
    • 中间插入0后拼接,完成格式转换

验证示例

原始值转换后值
B1-01-A-1B1-01-A-01
C1-04-B-2C1-04-B-02
G1-02-D-3G1-02-D-03
A-01-A-1A-01-A-1
A-01-A-2A-01-A-2

内容的提问来源于stack exchange,提问作者Moses

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 10:25:38