SQL:如何拉取第一个space之前的字符
SQL: how to pull characters before the first space
对于不是 NULL
的字段,如何在第一个 space 之前提取字符?
例如:
Banana Bread
NULL
Chocolate Chip Cookie
结果:
Banana
NULL
Chocolate
谢谢!
通过阅读 documentation of the netezza string functions,我相信您应该能够通过使用函数 instr()
和 substr()
来实现这一点,例如:
substr(
my_column,
1,
instr(my_column, ' ') - 1
)
基本上,instr(my_column, ' ')
给出字符串中第一个 space 的位置;从中减去 1
,您将得到要在字符串开头捕获的字符数。
如果给定一个 NULL
值,这个表达式也应该 return NULL
。
在 MS SQL 服务器上:
select
Snack
,charindex(' ', Snack) SpaceLocation
,substring(Snack, 1, charindex(' ', Snack)-1) SubString
from (
values
('Banana Bread')
,(NULL)
,('Chocolate Chip Cookie')
) t(Snack)
select substring(FieldName, 1, charindex(' ',FieldName))
其中 FieldName 不为空
对于不是 NULL
的字段,如何在第一个 space 之前提取字符?
例如:
Banana Bread
NULL
Chocolate Chip Cookie
结果:
Banana
NULL
Chocolate
谢谢!
通过阅读 documentation of the netezza string functions,我相信您应该能够通过使用函数 instr()
和 substr()
来实现这一点,例如:
substr(
my_column,
1,
instr(my_column, ' ') - 1
)
基本上,instr(my_column, ' ')
给出字符串中第一个 space 的位置;从中减去 1
,您将得到要在字符串开头捕获的字符数。
如果给定一个 NULL
值,这个表达式也应该 return NULL
。
在 MS SQL 服务器上:
select
Snack
,charindex(' ', Snack) SpaceLocation
,substring(Snack, 1, charindex(' ', Snack)-1) SubString
from (
values
('Banana Bread')
,(NULL)
,('Chocolate Chip Cookie')
) t(Snack)
select substring(FieldName, 1, charindex(' ',FieldName)) 其中 FieldName 不为空