меня возвращают следующие SPДело в том, где класс - хранимая процедура
ALTER PROCEDURE [dbo].[GetStudentsByUserId]
@userId UNIQUEIDENTIFIER,
@roleType bit
AS
SET NOCOUNT ON;
DECLARE @classId UNIQUEIDENTIFIER
EXEC [dbo].[GetClassId] @userId,@classId OUTPUT
SELECT
B.StudentId,
B.StudentName,
B.Description,
B.StudentType
FROM
ClassStudents A
INNER JOIN
Student B
ON
B.StudentId = A.StudentId
WHERE
A.CassId = @classId
AND
(
B.StudentType =
CASE
@roleType
when 1
then 1
when 2
then 2
END
OR
B.StudentType =
CASE
@roleType
when 1
then 4
when 2
then 2
END
)
Когда я запускаю это следующим образом
exec [GetStudentsByUserId] '28f95465-f30f-4b8b-cc92-d4c4e8d73273', 1
возвращает студентов с типом студента 1. И когда я бегу это следующим образом:
exec [GetStudentsByUserId] '28f95465-f30f-4b8b-cc92-d4c4e8d73273', 2
Также он возвращает студентов со студентом типа 1. Бу т мне нужно студенты с типом 2.
Я просто хочу, чтобы студенты с 1-го типа, 4, когда я прохожу roleType
как 1, и хочу получить студент 2-го типа, когда я прохожу roleType
, как 2.
Любые лучшие решения очень заметны.
Почему и теги MySQL и SQL Server? (Вы действительно используете оба продукта здесь?) – jarlh
Просто MySQL. Я его отредактировал. – Gunaseelan
Ну, часть [dbo]. [GetClassId] больше похожа на sql-сервер – jkavalik