当前位置:首页 » 编程语言 » sql截取数字
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql截取数字

发布时间: 2022-01-21 23:25:17

‘壹’ sql如何截取字符

sql截取字符串:

1、LOCATE(substr, str):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,则返回0;

2、POSITION(substr IN str):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,与LOCATE函数作用相同;

3、LEFT(str, length):从左边开始截取str,length是截取的长度;

4、RIGHT(str,length):从右边开始截取str,length是截取的长度;

5、SUBSTRING_INDEX(str ,substr ,n):返回字符substr在str中第n次出现位置之前的字符串;

6、SUBSTRING(str,n ,m):返回字符串str从第n个字符截取到第m个字符;

7、REPLACE(str, n, m):将字符串str中的n字符替换成m字符;

8、LENGTH(str):计算字符串str的长度。

‘贰’ sql 截取数字后进行排序

--MSSQL,楼上那个肯定排不出你的效果
select*from表
orderbycaseSUBSTRING(字段,2,1)
when'一'then1
when'二'then2
when'三'then3
when'四'then4
when'五'then5
when'六'then6
when'七'then7
when'八'then8
when'九'then9
when'十'then10
end

‘叁’ SQL怎么截取字符串的数字部分

正则表达式~
可惜自己也没太懂~

‘肆’ 一个关于SQL 语句截取字符串中的数字问题

这个自己写一个函数(假设 f_getdigit(s_in):

输入: 字符串
输出: 非数字中间的数字内容

函数体: 逐个 判断字符串 各字符的 ascii码 ,找到第一个数字开始的地方; 接着找到 后续 第一个非数字的地方(或者找完) ;
截取 中间的 内容,返回 即可。

然后 就可以在 sql语句中使用此函数:
select f_getdigit(col1) from tab1

‘伍’ SQL 只截取数字的函数,

select substring(列名,开始位置,结束位置) from tb

‘陆’ SQL怎么取字符串中的数字

1、创建测试表,

create table test_str(id int, v_str varchar2(20));

‘柒’ SQL怎样取出字符串中的数字

比如你的表叫作TALBE1,字段是str1,类型为nvarchar,那么找出有湘政发的最大号加1这样写
select max(convert(int,substring(str1,patindex(N'%[1234567890]%',str1),len(str1)-patindex(N'%[1234567890]%',str1)+1-patindex(N'%[1234567890]%',reverse(str1))+1)))+1 from table1 where str1 like N'%湘政发%'
测试通过,耗时很长,请认真试试。
这是sql server 的写法。

如果是ORACAL或其它的SQL语言您可以到这里参考一下。你会发现,用SQL SERVER我的方法要比他的好
http://book.csdn.net/bookfiles/530/10053017904.shtml