倒出固定格式和数据的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