架构
我有 3 个包含以下列的表:
tblClients [ClientID, ClientName, Client Contact]
tblEvents [EventID, EventName]
tblEventBook [EventBookID, EventID, ClientID]
tblEventBook EventID
火柴tblEvents EventID
tblEventBook ClientID
火柴tblClients ClientID
我有两个参数:@useEventID
和@useClientID
我想检索不等于和tblClient
的所有行。tblEventBook
useEventID
useClientID
我尝试使用以下内容,但它不起作用:
SELECT *
FROM tblClients
WHERE tblEventBook.EventID <> @useEventID
AND tblEventBook.ClientID <> @useClientID
样本数据:
tblEventBook
EventBookID EventID ClientID
1 1 1
2 2 2
3 3 1
4 4 2
tblClients
ClientID ClientName ClientContact
1 TestNameA 12345
2 TestNameB 54321
tbl事件
EventID EventName
1 TestEventA
2 TestEventB
3 TestEventC
4 TestEventD
5 TestEventE
所需结果
我使用时需要得到以下结果:
@useClientID = 1, @useEventID = 1
它应该返回
ClientID 2
@useClientID = 2, @useEventID = 1
它应该返回
ClientID 1 and 2
@useClientID = 2, @useEventID = 2
它应该返回
ClientID 1
@useClientID = 5, @useEventID = 2
它应该返回
ClientID 1 and 2