我有两张桌子: 的 nameTable
marksTable
我想显示所有相同classId 的学生的 userId,userName,courseCode,marks 。
create proc mark__classId
@classId int
as
select marksTable.courseCode, marksTable.userId, marksTable.marks, nameTable.userName
from marksTable, nameTable
where
marksTable.classId = nameTable.classId
但是这个查询给出了非常模糊的o / p。
假设“名称1 ”,ID NAME1 ,classId 10 跟随courseCode'C1,C2,C3',各自标记为'80,99 90' 现在我想在输入
时显示所有这些信息exec mark__classId 10
答案 0 :(得分:1)
你的选择应该更像这样,你只需要使用传入的参数。除了您应该使用JOIN
而不是带有过滤器的CROSS JOIN
SELECT marksTable.courseCode, marksTable.userId, marksTable.marks, nameTable.userName
FROM marksTable
JOIN nameTable
ON marksTable.classId = nameTable.classId
WHERE marksTable.classId = @classId