У меня есть две таблицы.Таблица price_code имеет внешний ключ, который ссылается на таблицу site .
price_code
___________
priceCodeID
siteID
price
и
site
______________
siteID
operatorName
country
Мне нужно выбрать строки, которыеНапример, country = "Перу" и имеют цену = 0, как я хочу, но в price_code есть несколько строк, которые имеют одинаковый siteID и имеют две проверки.Мне не нужно рассматривать строку, если siteID имеет цену, отличную от нуля в любом регистре.
SELECT s.siteID, pc1.price, s.country, s.operatorName FROM price_code AS pc1
INNER JOIN site AS s ON s.siteID = pc1.siteID
WHERE country = "Peru"
AND operatorName = "Movistar" AND price = 0
AND pc1.siteID NOT IN (
SELECT siteID FROM price_code WHERE pc1.price <> 0
);
Некоторые данные по price_code :
priceCodeID | siteID | price
_____________________________
1000 | 64 | 0
1001 | 64 | 100
1002 | 27 | 0
1003 | 18 | 100
1004 | 17 | 1
А для сайта
siteID | operatorName | country
___________________________________
64 | Peru | Movistar
27 | Peru | Movistar
18 | Argentina | Movistar
27 | Bolivia | Claro
И мой результат может быть:
siteID | price | country | operatorName
____________________________________________
27 | 0 | Peru | Movistar