Задать вопрос
AstralProjection
@AstralProjection

Как правильно вычесть подмножество из запроса?

5ddf9dde523fe000859659.jpeg
Есть база пользователей, их кошельков и транзакций.

Необходимо найти пользователей с валютой кошелька EUR (WalletSections.Currency = 2), но у которых не было транзакций в EUR.
Использую INTERSECT, из выборки WalletSections.Currency = 2 убрал (WalletSections.Currency = 2 AND COUNT(Transactions.TransactionID) = 0)

Корректен ли запрос, или лучше использовать другой оператор?

SELECT Users.UserID
FROM Users
INNER JOIN Wallets ON Users.UserId = Wallets.UserId
INNER JOIN WalletSections ON Wallets.WalletId = WalletSections.WalletId
WHERE WalletSections.Currency = 2
GROUP BY Users.UserID
INTERSECT
SELECT Users.UserID
FROM Users
INNER JOIN Wallets ON Users.UserId = Wallets.UserId
INNER JOIN WalletSections ON Wallets.WalletId = WalletSections.WalletId
INNER JOIN Transactions ON WalletSections.WalletSectionID = Transactions.WalletSectionID
WHERE WalletSections.Currency = 2
AND COUNT(Transactions.TransactionID) = 0
GROUP BY Users.UserID
  • Вопрос задан
  • 69 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы