parsing - Teradata:获取大型可变文本字段的特定部分
问题描述
我的第一篇文章:(善良)问题:我需要从包含完整 SQL 语句的文本字段中提取视图名称,以便我可以将该字段链接到不同的数据源。有两个文本字符串始终存在于目标视图的两侧。我希望将这些用作识别“锚点”以及子字符串以从它们之间引入视图名称文本。例子:
from v_mktg_dm.**VIEWNAME** as lead_sql
(大写/粗体是我要提取的)我尝试使用
SELECT
SUBSTR(SQL_FIELD,INSTR(SQL_FIELD,'FROM V_MKTG_TRM_DM.',19),20) AS PARSED_FIELD
FROM DATABASE.SQL_STORAGE_DATA
但我没有得到好的结果 - 任何帮助表示赞赏
解决方案
您可以应用正则表达式:
RegExp_Substr_gpl(SQL_FIELD, '(v_mktg_dm\.)(.*?)( AS lead_sql)',1,1,'i',2)
这将查找“v_mktg_dm”之间的字符串。和'作为lead_sql'。
RegExp_Substr_gpl
是一种未记录的变体,RegExp_Substr
它简化了忽略匹配部分的语法
推荐阅读
- vue.js - 您如何禁用/修复此特定的默认行为,其中刷新整个网页后仍选择特定的路由器链接
- c# - EF Core Remove-Migration 错误:对象引用未设置为对象的实例
- python - 查找所有组合以将单个列表拆分为两个列表
- nativescript - 在 NativeScript 中有没有办法跨平台安排后台作业?
- iis - iis 10 中的 URL 重写模式
- java - 我想在我的 Homefragment.java 类的 recyclerview 中添加水平滚动的卡片视图
- swift - 如何构建顶部和底部白色的集合视图控制器?
- javascript - 如何知道在动态生成的选项卡集中选择并激活了哪个选项卡
- c# - 如何在 WPF 中创建一个通用视图并且应该在所有模块中引用?
- php - 如何将会话值与php中的多个文件夹名称进行比较?