sql 提取字段某位内容
我想提取一个字段内某位上的数据,应该如何实现呢?例如:200800122445623需要提取字段内5-10位的内容001224应该如何实现用substring(字段,1,...
我想提取一个字段内某位上的数据,应该如何实现呢?
例如: 200800122445623
需要提取字段内 5-10位的内容 001224 应该如何实现
用substring(字段,1,4) 可以取到 2008
但substring(字段,5,10) 却取不到数据 这是为什么呢? 展开
例如: 200800122445623
需要提取字段内 5-10位的内容 001224 应该如何实现
用substring(字段,1,4) 可以取到 2008
但substring(字段,5,10) 却取不到数据 这是为什么呢? 展开
展开全部
substring(字段,5,10-5+1)
建议你看看sql的帮助。
语法
SUBSTRING ( value_expression ,start_expression , length_expression )
参数
字词
定义
value_expression
是 character、binary、text、ntext 或 image 表达式。
start_expression
指定返回字符的起始位置的整数或 bigint 表达式。如果 start_expression 小于 0,会生成错误并终止语句。如果 start_expression 大于值表达式中的字符数,将返回一个零长度的表达式。
length_expression
是正整数或指定要返回的 value_expression 的字符数的 bigint 表达式。如果 length_expression 是负数,会生成错误并终止语句。如果 start_expression 与 length_expression 的总和大于 value_expression 中的字符数,则返回整个值表达式。
建议你看看sql的帮助。
语法
SUBSTRING ( value_expression ,start_expression , length_expression )
参数
字词
定义
value_expression
是 character、binary、text、ntext 或 image 表达式。
start_expression
指定返回字符的起始位置的整数或 bigint 表达式。如果 start_expression 小于 0,会生成错误并终止语句。如果 start_expression 大于值表达式中的字符数,将返回一个零长度的表达式。
length_expression
是正整数或指定要返回的 value_expression 的字符数的 bigint 表达式。如果 length_expression 是负数,会生成错误并终止语句。如果 start_expression 与 length_expression 的总和大于 value_expression 中的字符数,则返回整个值表达式。
参考资料: sql帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
substring(字段,5,6)即可,最后一个参数的含义是提取字符的长度,而不是提取到多少位
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Select substring (字段,5,6) 可以提取字段内 5-10位的内容
但如果字段值长度本身不足5位,就取不到了
但如果字段值长度本身不足5位,就取不到了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
5-10位应该是
select substring('200800122445623',5,6)
结果是001224
如果取不到数,先确认,字段类型,长度,是否空值
不行hi我
select substring('200800122445623',5,6)
结果是001224
如果取不到数,先确认,字段类型,长度,是否空值
不行hi我
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询