[英]How to exclude something from this mssql/php query?
我有這個:
SELECT TOP 100
IDNum,
IDName,
Nation,
(SELECT
SUM(Loyalty)
FROM
USERDATA
WHERE
USERDATA.Knights = KNIGHTS.IDNum
AND USERDATA.Authority IN(1, 2)
) as ClanLoyalty
FROM
KNIGHTS
ORDER BY
ClanLoyalty DESC
但我想排除Knights
(21 and 25)
所以該查詢中包含騎士IDNum
21歲和25歲?
如何排除它們?
這不是您的外部查詢中的簡單where子句嗎?
SELECT TOP 100
IDNum,
IDName,
Nation,
(SELECT
SUM(Loyalty)
FROM
USERDATA
WHERE
USERDATA.Knights = KNIGHTS.IDNum
AND USERDATA.Authority IN(1, 2)
) as ClanLoyalty
FROM
KNIGHTS
where
knights.idnum not in (21,22)
ORDER BY
ClanLoyalty DESC
如果您將其從主查詢中排除,則無論如何它們都不會在內部查詢中匹配,因為無論如何它們都已加入IDNum字段。
關於這一點,您可能還想閱讀一下我整理的這份問答,其中涵蓋了許多類似這樣的SQL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.