如何在SQL中打破数字?

时间:2011-03-16 19:17:29

标签: sql

假设有一个列值:

 235698752 

我如何打破它:

 2 3569 8752

如何在SQL语句中完成?

3 个答案:

答案 0 :(得分:3)

另一个选项,也适用于SQL Server:

SELECT STUFF(STUFF('235698752',6,0,' '),2,0,' ')

答案 1 :(得分:1)

这是一个镜头,不确定它是否正是你想要的:

SELECT '[' + CAST(235698752 as char(10)) + ']'
, SUBSTRING(CAST(235698752 as char(10)),1,1)
, SUBSTRING(CAST(235698752 as char(10)), 4,4)
, SUBSTRING(CAST(235698752 as char(10)), 6,4)
, SUBSTRING(CAST(235698752 as char(10)), 6,4)

答案 2 :(得分:1)

同样的事情,在Oracle SQL中使用SUBSTR

SELECT 
SUBSTR('235698752',1,1) || ' ' ||
SUBSTR('235698752',2,4)  || ' ' || 
SUBSTR('235698752',6,4)
from dual; 

请注意,这个数字的长度为9。