日期:2014-05-18  浏览次数:20512 次

倒出固定格式和数据的sql语句?
有张表a数据如下:
年份             学号               分数
2005             001                   85
2005             002                   99
2006             002                   99
2006             003                   99
2006             005                   99
2007             004                   100


要把以上数据从数据库里倒出txt文件到c盘里,例如把2006年的数据倒出来效果如下:
"002 ", " ", "99 ", " "
"003 ", " ", "99 ", " "
"005 ", " ", "99 ", " "
说明:上面的数据必须要有引号和逗号,格式要完全一样。




------解决方案--------------------
没测试

C:\> osql -U用户 -P密码 -S服务器 -d数据库 -Q "select ' " '+学号+ ' ", " ", " '+rtrim(分数)+ ' ", " " ' from a where 年份= '2006 ' " -o "c:\result.txt "
------解决方案--------------------
-----例子
use pubs

create table t(年份 varchar(10),学号 varchar(3),分数 int)
insert t
select '2005 ', '001 ',85
union all select '2005 ', '002 ',99
union all select '2006 ', '002 ',99
union all select '2006 ', '003 ',99
union all select '2006 ', '005 ',9
union all select '2007 ', '004 ',100


EXEC master..xp_cmdshell 'bcp pubs..t out c:\student.txt -q -c -T '

drop table t