在 Oracle 中将 varchar 拆分为单独的列
我有点困惑:我被要求接受以数据库中的特定字符串开头的注释,并将结果分成单独的列。
例如,如果返回值是这样的:
COLUMN_ONE
--------------------
'D7ERROR username'
返回值必须是:
COL_ONE COL_TWO
--------------------
D7ERROR username
一旦结果集被结构化,是否可以定义列,只是为了将字符串分成两部分?
I'm in a bit of a pickle: I've been asked to take in comments starting with a specific string from a database, and separate the result into separate columns.
For example -- if a returned value is this:
COLUMN_ONE
--------------------
'D7ERROR username'
The return needs to be:
COL_ONE COL_TWO
--------------------
D7ERROR username
Is it even possible to define columns once the result set has been structured just for the sake of splitting a string into two?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
取决于数据的一致性 - 假设单个空格是您想要出现在第一列和第二列中的内容之间的分隔符:
Oracle 10g+ 具有正则表达式支持,可以根据您需要解决的情况提供更大的灵活性。它还有一个正则表达式子字符串方法...
参考:
Depends on the consistency of the data - assuming a single space is the separator between what you want to appear in column one vs two:
Oracle 10g+ has regex support, allowing more flexibility depending on the situation you need to solve. It also has a regex substring method...
Reference:
使用 REGEXP_SUBSTR 非常简单:
With REGEXP_SUBSTR is as simple as:
简单的方法就是转换成列
Simple way is to convert into column