【问题标题】:SQL - Splitting the string [duplicate]SQL - 拆分字符串[重复]
【发布时间】:2016-03-15 15:06:29
【问题描述】:

我正在尝试根据空格拆分字符串(例如 BUFORD GA 30518)以填充到不同的字段城市、州和邮政编码。请帮助我在 SQL 中为此编写查询

【问题讨论】:

  • @alisha anjum 如果对你有用,勾选并标记为正确

标签: sql plsql


【解决方案1】:

试试这个:

SELECT  City= LEFT(Column, CHARINDEX(' ',Column)-1)
,State= LEFT(SUBSTRING(Column, CHARINDEX(' ',Column)+1,LEN(Column)), CHARINDEX(' ',SUBSTRING(Column, CHARINDEX(' ',Column)+1,LEN(Column)))-1)
,zipcode= REVERSE(LEFT(REVERSE(Column), CHARINDEX(' ',REVERSE(Column))-1))

你可以试试这个:

SELECT REGEXP_SUBSTR(t.column_one, '[^ ]+', 1, 1) col_one,
       REGEXP_SUBSTR(t.column_one, '[^ ]+', 1, 2) col_two,
       REGEXP_SUBSTR(t.column_one, '[^ ]+', 1, 3) col_three
FROM YOUR_TABLE t;

也可以试试这个:

SELECT SUBSTR(t.column_one, 1, INSTR(t.column_one, ' ')-1) AS col_one,
       SUBSTR(t.column_one, INSTR(t.column_one, ' ')+1) AS col_two,
       SUBSTR(t.column_one, INSTR(t.column_one, ' ')+1) AS col_three
FROM YOUR_TABLE t

【讨论】:

  • 你好,这个可以修改成oracle写吗?
  • @alishaanjum 我已经更新了答案,试试这个。如果对您有用,请将其标记为有用
  • 非常感谢。它非常有用。
  • @alishaanjum 如果对您有用,请标记为有用
  • @alishaanjum 我很高兴它对你有用
猜你喜欢
  • 2010-11-03
  • 1970-01-01
  • 2017-07-22
  • 2011-07-06
  • 2011-09-03
  • 2017-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多