PL/sqlsplitvarchar

PL/sqlsplitvarchar,sql,oracle,plsql,Sql,Oracle,Plsql,我从一张桌子上拿的,无名氏 将其拆分为两个变量的最佳方法是什么: lastName = 'Doe'; firstName = 'John'; 我想这应该行得通: SELECT SUBSTR(NameColumn, 1, INSTR(NameColumn,' ',1)) AS firstName, SUBSTR(NameColumn, INSTR(NameColumn,' ',1)+1) FROM tablName 我可能会在索引和位置计算中出错,所以一定要添加建议性的注释和修改。我使用正则表

我从一张桌子上拿的,无名氏

将其拆分为两个变量的最佳方法是什么:

lastName = 'Doe';
firstName = 'John';

我想这应该行得通:

SELECT SUBSTR(NameColumn, 1, INSTR(NameColumn,' ',1)) AS firstName,
SUBSTR(NameColumn, INSTR(NameColumn,' ',1)+1) FROM tablName

我可能会在索引和位置计算中出错,所以一定要添加建议性的注释和修改。我使用正则表达式为Wiki社区打开了它:使用tbl作为双选择regexp_substr中的select'John Doe'str,[^]*$',[^]*$',1,1,NULL,1 first_name,regexp_substr,[^]*$',1,2,NULL,1 last_name from tbl;谢谢,说到正则表达式,我有点老套。但我会再做一次关于正则表达式的自学。谢谢你的评论。这只是另一种方式。很高兴知道嵌套的INSTR/SUBSTR可能会变得丑陋。我想应该由开发人员来决定它是否比正则表达式更丑陋。呵呵