ebrahim.rayatparvar
سه شنبه 03 اسفند 1395, 18:28 عصر
سلام خدمت همه دوستان و مهندس های عزیز.
من میخوام یه Select داخل پروسیجر sql بزنم که پنج پارامتر داره که تو ادامه کدش رو میزارم، حالا این من میخوام قسمت Where خودم رو طوری بزنم که اگه کاربر یکی رو وارد کرد بر اساس اون یکی فیلتر بشه و اگه نه چندتا رو وارد کرد یا همه رو وارد کرد بر اساس همه فیلتر بشه.
ALTER PROCEDURE [dbo].[SpReportCustomer]
@PrescriptionName NVARCHAR(50),
@PrescriptionFamily NVARCHAR(50),
@PrescriptionUnitNo NVARCHAR(25),
@PrescriptionDate DATETIME,
@PrescriptionOld SMALLINT
AS
BEGIN
SELECT
ROW_NUMBER() OVER ( ORDER BY P.PrescriptionCode ) AS Number,
P.PrescriptionCode,
P.PrescriptionName,
P.PrescriptionFamily,
P.PrescriptionOld,
P.PrescriptionDate,
P.PrescriptionEchoType,
P.PrescriptionRitm,
P.PrescriptionReasonForRefer,
P.PrescriptionUnitNo,
P.PrescriptionOfficeCode
FROM dbo.tblPrescription AS P
WHere
P.PrescriptionName LIKE @PrescriptionName OR
P.PrescriptionFamily LIKE @PrescriptionFamily OR
P.PrescriptionUnitNo LIKE @PrescriptionUnitNo OR
P.PrescriptionDate LIKE @PrescriptionDate OR
P.PrescriptionOld LIKE @PrescriptionOld
END
من میخوام یه Select داخل پروسیجر sql بزنم که پنج پارامتر داره که تو ادامه کدش رو میزارم، حالا این من میخوام قسمت Where خودم رو طوری بزنم که اگه کاربر یکی رو وارد کرد بر اساس اون یکی فیلتر بشه و اگه نه چندتا رو وارد کرد یا همه رو وارد کرد بر اساس همه فیلتر بشه.
ALTER PROCEDURE [dbo].[SpReportCustomer]
@PrescriptionName NVARCHAR(50),
@PrescriptionFamily NVARCHAR(50),
@PrescriptionUnitNo NVARCHAR(25),
@PrescriptionDate DATETIME,
@PrescriptionOld SMALLINT
AS
BEGIN
SELECT
ROW_NUMBER() OVER ( ORDER BY P.PrescriptionCode ) AS Number,
P.PrescriptionCode,
P.PrescriptionName,
P.PrescriptionFamily,
P.PrescriptionOld,
P.PrescriptionDate,
P.PrescriptionEchoType,
P.PrescriptionRitm,
P.PrescriptionReasonForRefer,
P.PrescriptionUnitNo,
P.PrescriptionOfficeCode
FROM dbo.tblPrescription AS P
WHere
P.PrescriptionName LIKE @PrescriptionName OR
P.PrescriptionFamily LIKE @PrescriptionFamily OR
P.PrescriptionUnitNo LIKE @PrescriptionUnitNo OR
P.PrescriptionDate LIKE @PrescriptionDate OR
P.PrescriptionOld LIKE @PrescriptionOld
END