我想从一个列(名为= description)
中获取两个已知字符串(“Hostname:”和“Host Alias:”)之间的字符串(服务器名称)示例数据
我们收到了该服务的提醒:xxxxx-iosdoh_free.USERSHostname:pugsxxxxdsbudlp01.eeeHost别名:894.aa
我的查询与正则表达式:(带来空白值)
select regexp_extract(description, 'regex (?<=Hostname:).*?(?=Host Alias:), 1)',
from tableA
where number = '554';
My Query with Substring :(带来空白值)
select substring(description, (locate('Hostname: ', description) + 8), (locate('Host Alias:', description) - 1) - (locate('Hostname: ', description) + 8)) as 'Server_Name'
from tableA
where number = '554';
如果我运行查询以在'我'和'警告'之间搜索字符串=我们收到警报....,然后我确实在结果中找到'收到',因为'我们'和'警告'之前有空格和在他们之后并被视为一个词。
如何用字符串搜索(没有单词)或者如果你有更好的方法来完成我的任务,那将会有所帮助。