代码之家  ›  专栏  ›  技术社区  ›  John

在x字符上调整表列长度

  •  0
  • John  · 技术社区  · 6 年前

    我有下面的表和列。列是varchar(8)。我需要 trim 超过7个字符。

    LastName
     Smith
     McKinney
    

    我下面的SQL修剪所有行。我们如何只修剪超过7个字符的长度?

    update TEST set LASTNAME = SUBSTR(LASTNAME,1,LENGTH(LASTNAME)-1);
    
    1 回复  |  直到 6 年前
        1
  •  3
  •   Alex Poole    6 年前

    只需检查起始长度:

    update TEST set LASTNAME = SUBSTR(LASTNAME,1,LENGTH(LASTNAME)-1)
    where LENGTH(LASTNAME) > 7;
    
    1 row updated.
    
    select * from test;
    
    LASTNAME
    --------
    Smith
    McKinne
    

    你可以替换 LENGTH(LASTNAME)-1 带数字文本 7 在这种情况下。