我正在尝试从可能包含0,1或许多URL的文本块中提取特定格式的所有URL。
例如,一行可能具有以下值:
'some text blahblahblah.com更多文字secondwebsite.com更多测试'
我希望在我的输出中表示为两行:
'布拉罕布拉罕伯拉汉.com
'second website.com
我可以使用REGEXP_SUBSTR
和SPLIT_PART
来获得第一个.com
事件,但理想情况下我能够分别提取所有出现的事件。有没有办法做到这一点?
在SQL中,从单个输入行返回多个输出行并不容易。
您需要交叉连接到数字表(例如,包含1, 2, 3...
的行的表,然后使用该数字引用输入行的单独部分。
底线:这是可能的,但它很混乱。尝试找到实现此目的的替代方法。
如果您想从具有多个URL的字段创建单独的行,在SQL中通常不可行,我建议您使用ETL工具或某些脚本语言(如python)来执行此操作。