【问题标题】:Removing part of string after specific character using mysql使用mysql在特定字符后删除部分字符串
【发布时间】:2019-11-14 01:11:41
【问题描述】:

我想删除 mysql 列中特定字符之后的所有字符。但我需要提到的可移动角色。我已经搜索过,但提到的所有字符也都被删除了。

例如:

Tracding Company Pvt Ltd. - Welecome Home

需要输出:

Tracding Company Pvt Ltd.

如果我将Ltd.substring_index 一起使用,那么ltd. 也会被删除。

请有人帮忙。

【问题讨论】:

标签: mysql


【解决方案1】:

只需将索引增加您搜索的子字符串的长度,在您的示例中为“有限公司”。是 4:

SELECT LEFT('Tracding Company Pvt Ltd. - Welecome Home', INSTR ('Tracding Company Pvt Ltd. - Welecome Home', 'Ltd.') + 4)

另一种选择是使用CONCAT() 函数将缺失值添加回来:

SELECT CONCAT(SUBSTRING_INDEX('Tracding Company Pvt Ltd. - Welecome Home', 'Ltd.', 1), 'Ltd.')

编辑:根据 cmets 更正

【讨论】:

  • 如果搜索字符串是变量,您可以使用length('Ltd.') 而不是4
  • @adambg,我得到的结果只有“4”,但我需要“Tracding Company Pvt Ltd.”
  • 修复了答案以更好地反映问题
猜你喜欢
  • 2013-08-05
  • 1970-01-01
  • 2011-07-29
  • 2020-12-06
  • 2020-06-17
  • 2014-07-03
  • 2021-10-11
相关资源
最近更新 更多