У меня есть 2 таблицы, где одна хранит историю записи следующим образом
CREATE TABLE Student
(
StudentId INT,
StudentName NVARCHAR(200)
)
CREATE TABLE StudentHist
(
StudentHistId INT,
BranchId INT,
StudentId INT,
ExitDate DATE
)
INSERT INTO Student
VALUES (1, 'ABC'), (2, 'PQR')
INSERT INTO StudentHist
VALUES (1, 1, 1, null), (2, 2, 1, '2016-01-01'),
(3, 2, 2, '2017-01-01')
SELECT S.StudentName
FROM Student S
INNER JOIN StudentHist SH ON S.StudentId = SH.StudentId
AND (SH.ExitDate IS NULL OR SH.ExitDate >= getdate())
AND SH.BranchId = 2
В настоящее время у меня есть запрос, который дает записи, где дата выхода равна нулю, мне нужно условие переключения, где он проверит, что дата равна нулю, и выполнит текущий код, если не получит последнее по гистиде и получит дату
https://dbfiddle.uk/?rdbms=sqlserver_2017&fiddle=1036cec8a82566534665c89f7279ebcb