gpt4 book ai didi

mysql - 在 MYSQL 中的记录末尾添加句号或标点符号?

转载 作者:太空宇宙 更新时间:2023-11-03 10:47:28 24 4
gpt4 key购买 nike

我的数据库中有一列描述。当输入数据时,一些描述在末尾缺少句点,我想更新行并在它们不存在时添加它们。

是使用REGEXP 函数的最佳方法还是有更好的方法?

编辑:
这最终比我原先想象的要复杂,所以我想与其他可能发现它有用的人分享这个过程。

  1. 第一个复杂问题是我在一些字符串的末尾有带有空格和其他字符的记录,我是这样处理的。

    UPDATE table_name SET col_name = REPLACE(TRIM(TRAILING ' ' FROM col_name), 
    TRIM(TRAILING '\r' FROM col_name),
    TRIM(TRAILING '\n' FROM col_name))
  2. 第二个问题是在添加句点时排除了其他几个标点符号。所以这是最后的查询。

    UPDATE table_name
    SET col_name = CONCAT(col_name,'.')
    WHERE RIGHT(col_name,1) <> '.'
    AND RIGHT(col_name,1) <> '!'
    AND RIGHT(col_name,1) <> '?'

最佳答案

只需使用updatelike:

update table t
set col = concat(col, '.')
where col not like '%.';

编辑:

对于多种类型的标点符号,您可以使用正则表达式,但我会这样做:

update table t
set col = concat(col, '.')
where right(col, 1) not in ('.', ';', '!', '?', . . .);

关于mysql - 在 MYSQL 中的记录末尾添加句号或标点符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29524108/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com