如何计算值并将其用作存储过程中的变量

时间:2011-09-23 09:42:28

标签: sql sql-server database

基本上,我想做的是;

所需的类数是一个变量。例如。用户可以将5,4作为最低要求。

由于我是新手,我无法上传图片,但这里是我的ER图的图片,以了解表格结构。

我正在使用sql server 2005

1 个答案:

答案 0 :(得分:0)

首先,你的问题是措辞不佳;很难理解你想要实现的目标。

要从数据集中获取满足所需条件的行数,请使用SELECT COUNT(0)FROM Tablename Where WhereCondition。

我看不到你的ER图所以我会假设;这应该按班级返回。

DECLARE @Students TABLE (id int, StudentName nvarchar(max));
DECLARE @Classes TABLE (id int, ClassName nvarchar(max))
DECLARE @StudentClassAttendance TABLE (ClassAttendanceID int, StudentId int, ClassId int, StartTime datetime)

SELECT sca.StudentID, s.StudentName, COUNT(sca.ClassAttendanceID), c.ClassName
FROM 
@Students s
INNER JOIN @StudentClassAttendance sca
ON sca.StudentId = s.Id
INNER JOIN @Classes c
ON c.Id = sca.ClassId
GROUP BY 
sca.StudentID, s.StudentName, ClassName