有没有人用存储过程写过报表啊,给我点思路,我想用存储过程写报表,哪位大神给我点案例,或者来一段简单易懂的代码哈,谢谢了,
真心求学
------解决方案--------------------
没需求,无法写
------解决方案--------------------
啥报表啊?有数据就能写~~~
------解决方案--------------------
select name ,gender from student where [deleted]=0
查询出学生姓名和性别的报表.
------解决方案--------------------
--IF object_id('Student')>0
-- DROP TABLE dbo.Student
--GO
----学生信息表
--CREATE TABLE Student(
-- Id INT PRIMARY KEY IDENTITY(1,1),
-- [Name] VARCHAR(10) NOT NULL,--学生姓名
-- Result INT NOT NULL,--成绩
-- UnitedId INT NOT NULL--年级信息表外键
--)
--IF object_id('United')>0
-- DROP TABLE United
--GO
----年级信息表
--CREATE TABLE United(
-- Id INT PRIMARY KEY IDENTITY(1,1),
-- [NjName] VARCHAR(10) NOT NULL,--年级
-- [BjName] varchar(10)--班级
--)
--INSERT dbo.United(NjName,BjName)
-- SELECT '一年级','1班' UNION
-- SELECT '一年级','2班' UNION
-- SELECT '二年级','1班' UNION ALL
-- SELECT '二年级','2班'
--INSERT dbo.Student(Name,Result,UnitedId)
-- SELECT '张三',80,1 UNION
-- SELECT '李四',90,2 UNION
-- SELECT '王五',88,3 UNION
-- SELECT '小刘',60,4 UNION
-- SELECT '小张',78,3 UNION
-- SELECT '小李',82,1 UNION ALL
-- SELECT '小黑',30,3
create PROC abc
AS
SELECT s.*,u.njname+bjname '班级'
FROM student s INNER JOIN united u ON s.UnitedId=u.id
WHERE result>60 AND NjName +BjName IN ('一年级1班','二年级1班')
go
EXEC abc
/*
Id Name Result UnitedId 班级
----------- ---------- ----------- ----------- --------------------
1 李四 90 2 一年级1班
3 小李 82 1 二年级1班
6 张三 80 1 二年级1班
*/
------解决方案--------------------
create proc 報表
as
begin
select '非常複雜' as msg
return
end
------解决方案--------------------
楼主你完全可以自己设计一个无厘头的报表来为难这些大牛么,呵呵。
------解决方案--------------------
在sqlserver执行
create PROC abc
AS
SELECT s.*,u.njname+bjname '班级'
FROM student s INNER JOIN united u ON s.UnitedId=u.id
WHERE result>60 AND NjName +BjName IN ('一年级1班','二年级1班')
go
然后在RTS(其实我也不知道这个是啥),连上数据库之后执行EXEC abc