读书人

困住了的一道T-SQL 语句欢迎各界高手

发布时间: 2013-01-26 13:47:03 作者: rapoo

困住了的一道T-SQL 语句,欢迎各界高手来飘过留答!
create proc Orders
@ship varchar(100),
@company varchar(100),
@trade varchar(100),
@starttime datetime ,
@endtime datetime
as

(???????)

go
(这个表的查询是:select * from All_Orders)

@ship 、 @company 、@trade 、 @starttime 、 @endtime
这五个变量是传递过来的 查询条件
5个查询条件 是交互的, 也就是说 不知道用户传递过来的是哪个条件,
怎么来进行查询呢?

请求 各路漂浮的同事们~


[解决办法]
试试:
if @starttime is null
select * from All_orders where ship=isnull(@ship,ship)
and company=isnull(@company,company) and trade=isnull(@trade,trade)
if @starttime is null
select * from All_orders where ship=isnull(@ship,ship)
and company=isnull(@company,company) and trade=isnull(@trade,trade) and orders_datetime
between @starttime and @endtime

看上去没啥问题啊

读书人网 >SQL Server

热点推荐