SQL server拆分字段的SQL语句

来源:百度知道 编辑:UC知道 时间:2024/05/16 11:11:26
我的数据库表有个字段里的内容是:
M_content
01 汉
02 回
03 维吾尔
04 苗
05 哈萨克
我现在想该字段分成两个,一个显示数字ID,一个显示内容,请问这样的SQL语句该怎么写?谢谢大家
沉默,谢谢你!我用了你的回答后,出现了这样的提示:
向substring函数传递了无效的length参数.

如果ID和内容是以空格分隔的,那么就这么写
select left(m_content,charindex(' ',m_content)-1) as ID,stuff(m_content,1,charindex(' ',m_content),'') as content
from 表
当然,如果记录中有不完全按照id+空格+内容这样的,语句可能会有问题。

“向substring函数传递了无效的length参数”正是因为m_content中包含不符合"id+空格+内容"的数据
你可以用
select *
from 表
where m_content not like '% %' or m_content is null
来找出这样的行。
另外我给你的语句是让你做参考的,你首先知道用到的函数是什么意思才可以。

SQL语句中拆分字段:
一、语句实现的是将sql表中某个特定的字段按照字段内容中的标志拆分成多个字段。下面的实例是将classname字段中的内容以“->”为分隔符拆分为两个部分。
select
ID ,
ClassID = PARSENAME(replace(ClassName,'->' , '.'), 2) ,
StyleID = PARSENAME(replace(ClassName,'->' , '.'), 1)
from tb
二、拆分之前的表格式:
ID classname。
1、 吃嫩草->东湖二等分 。
2、 的年覅->从丁俊晖v刹。
3、 觉得->督促。
4 、和长度->陈代工厂 。
5、 督促vui->大合唱。
三、拆分后的表格式:
ID ClassID StyleID。
1 、吃嫩草 东湖二等分。
2 、的年覅 从丁俊晖v刹。
3