1

我需要找到一种方法将指定列的所有条目减少到特定数量的字符,比如说 100,但不切词,这在 mysql 5.0 中是否可行?我不是程序员,有人可以帮我吗?已编辑:我还需要更新所有行,而不仅仅是选择。

4

2 回答 2

2

让我描述一下你需要做什么:

  1. 仅考虑字符串中的前 101 个字符
  2. 查找此字符串中的最后一个空格。这是字符串反面的第一个空格。
  3. 取 101- 那个位置的字符串。

这是MySQL中的代码:

select left(val, 100+1 - instr(reverse(left(val, 100+1)), ' '))
于 2013-05-28T14:23:34.367 回答
0

我可能会尝试这样的事情:

SELECT left(line, 100 - locate(' ' ,reverse(left(line, 100))))
FROM lines;

其中lines是表格,line是具体的列,100是你想要的行的长度。

编辑:

如果您想就地更新它们(我们不建议这样做),那么您将使用一个简单的更新语句:

UPDATE lines
SET line = left(line, 100 - locate(' ' ,reverse(left(line, 100))));
于 2013-05-28T14:25:34.837 回答