PDA

View Full Version : جستجوی پیشرفته براساس نام کالا و قیمت های پایینتر از یک قیمت



bftarane
چهارشنبه 25 بهمن 1391, 13:06 عصر
سلام.
لطفاً این Sp رو ببینید
USE [vo]
GO
/****** Object: StoredProcedure [dbo].[AdvacneSearch] Script Date: 02/04/2013 13:33:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[AdvacneSearch]
(
@pd_name nvarchar(50)=null,
@pd_price int=null
)
as
begin
select * from tbl_product
where (pd_name Like ISNULL(@pd_name,pd_name) + '%' )and
(pd_price like ISNULL(@pd_price,pd_price));
end
این به خوبی جواب میده یعنی وقتی نام کالا به تنهایی یا قیمت به تنهایی وارد میشه جواب میده همینطور وقتی نام کالا و قیمت با هم وارد میشن هم جواب میده
ولی من می خوام مثلاً کاربر وقتی قیمت 5000 رو وارد می کنه کالاهایی که قیمت کمتر از 5000 دارن همه نشون داده بشن
بنابراین این قسمت در کد بالا رو
(pd_price like ISNULL(@pd_price,pd_price));
به شکل زیر تغییر دادم
(pd_price < ISNULL(@pd_price,pd_price));
این هم وقتی که فقط قیمت رو وارد می کنم جواب میده ولی وقتی فقط نام کالا رو وارد میکنم دیگه کالا رو نمی تونه پیدا کنه ولی وقتی هر دو رو وارد می کنم هم جواب میده

لطفاً بگید اشکال کارم کجاست؟

محمد سلیم آبادی
چهارشنبه 25 بهمن 1391, 13:12 عصر
> را به => تبدیل کنید.