我有一个sql字段,我需要在左侧和右侧编辑出字符。
表名称是:cdr
字段名称是:dstchannel
dstchannel字段显示以下数据:Local / 872 @ from-internal-6acb,1
我只需要872作为输出
该字段始终具有相同数量的数据,因此872将保持其位置不变。
我将如何为mysql编写SQL查询?

如果我有另一个查询要包含在其中,我该怎么做?

谢谢

最佳答案

假设数字始终为3个字符:

SELECT
  SUBSTRING(dstchannel, 7, 3) AS x
FROM cdr


如果数字的长度是可变的,则需要查找“ @”。在T-SQL(SQL Server)中,可以使用CHARINDEX

SELECT
  SUBSTRING(dstchannel, 7, CHARINDEX('@', dstchannel, 7) - 7) AS x
FROM cdr

09-29 19:45