sql语句中如何查出int类型字段的前几位

来源:百度知道 编辑:UC知道 时间:2024/07/02 12:00:12
例如: 一个table表中一个int类型字段 ID ,字段中的值是123456
如何查询出ID字段的前三位 ,查出结果是123。
如果是字符串类型的用substring可以取到,那么int类型的怎么取啊?
哪位大侠帮帮忙!谢谢!

select cast(substring(cast(table.id as char),1,3) as int) from tablename.
原理就是两次转换...先变成字符串 截取3位再转int.
如果是oracle数据库 截字符串函数为substr 数据类型为 varchar ,number
我已经运行成功了 你试试

首先,将int型的先转换为string类型,通过convert(varchar(50),'字段名')转换成字符串,再通过substring截取就可以了
select substring(convert(varchar(50),ID),1,3) from table表名
试试看!!

假设xxx字段是int型
cast(xxx as varchar)即可当一个字符串字段用了

可以先取出int数值,把它转换成String,然后再取前3位。

那就麻烦点先把它转换为字符型的再取值呗!