SQL Select Procedure with multiple params
-
10 Agustus 2012 12:43
Hey, I've never used SQL stored procedures before and i've been struggleing trying to get this to work, Its pretty self explanatory you send in either 0, 1 or 2 of the params and depending on what you send it it selects accordingly, however I get the error "Incorrect syntax near 'END'." Any help would be greatly appreciated !
ALTER PROCEDURE [dbo].[SelectPatMedHist] @PractPCode nvarchar(10)='NA', @PatID int=-1 AS SET NOCOUNT ON; IF @PractPCode = 'NA' AND @PatID <> -1 BEGIN SELECT * FROM [db].[tblMedHist] WHERE [PatID] = @PatID IF @PractPCode <> 'NA' AND @PatID = -1 BEGIN SELECT * FROM [db].[tblMedHist] WHERE [PractPCode] = @PractPCode IF @PractPCode <> 'NA' AND @PatID <> -1 BEGIN SELECT * FROM [db].[tblMedHist] WHERE [PractPCode] = @PractPCode AND [PatID] = @PatID END
Many Thanks
Semua Balasan
-
10 Agustus 2012 12:48Moderator
It looks to me like what you might want is something like this:
IF @PractPCode = 'NA' AND @PatID <> -1 BEGIN SELECT * FROM [db].[tblMedHist] WHERE [PatID] = @PatID end else IF @PractPCode <> 'NA' AND @PatID = -1 BEGIN SELECT * FROM [db].[tblMedHist] WHERE [PractPCode] = @PractPCode end else IF @PractPCode <> 'NA' AND @PatID <> -1 BEGIN SELECT * FROM [db].[tblMedHist] WHERE [PractPCode] = @PractPCode AND [PatID] = @PatID end
- Diedit oleh Kent WaldropMicrosoft Community Contributor, Moderator 10 Agustus 2012 12:51
- Diedit oleh Kent WaldropMicrosoft Community Contributor, Moderator 10 Agustus 2012 12:52
- Ditandai sebagai Jawaban oleh BenJBaker 10 Agustus 2012 13:02
-
10 Agustus 2012 13:00Thank you this worked fine!