Sql server 2005 SQL Server 2005存储过程问题
我正在编写一个存储过程,如下所示:Sql server 2005 SQL Server 2005存储过程问题,sql-server-2005,Sql Server 2005,我正在编写一个存储过程,如下所示: create PROC uspInvCustomerLineItemGetList1(@CustomerID varchar(50)) AS BEGIN SELECT LineItemID, LineItemName from tblInvoiceLineItems where CustomerID = @CustomerID or CustomerID = '' and AccountNumbe
create PROC uspInvCustomerLineItemGetList1(@CustomerID varchar(50))
AS
BEGIN
SELECT LineItemID, LineItemName
from tblInvoiceLineItems
where CustomerID = @CustomerID
or CustomerID = ''
and AccountNumber = (select AccountNumber from tblInvAccountDetails
where AccountTypeID = 10 and 20)
END
我的问题是子查询传递2个或多个值从tblInvAccountDetails中选择AccountNumber,其中AccountTypeID=10和20,因此我将根据AccountTypeID=10和20比较AccountNumber 1000、10003和1006
请问如何编写存储过程
多谢各位
hemanth用于非=
注:
AccountTypeID不能同时为10和20:我猜您的意思是或。IN是多个OR的简写
并优先于左右检查您是否需要和某处
欢迎来到StackOverflow。请注意常见问题:
...
where
CustomerID=@CustomerID
or
CustomerID=''
and
AccountNumber IN (select AccountNumber from tblInvAccountDetails where AccountTypeID IN (10, 20))