EDIT :réponse modifiée pour la question mise à jour
REMARQUE :requête non testée
SELECT GROUP_CONCAT(lot ORDER BY lot ASC SEPARATOR ',')
from mytable
having count(*) = 2
and GROUP_CONCAT(tag ORDER BY tag ASC SEPARATOR ' ') = '101 102'
group by product
ancienne réponse
vous pouvez utiliser le groupe par pour y parvenir.
select tag, product from mytable where tag in (101,102) group by tag, product
cela peut également être possible en utilisant distinct, mais vous devez y jeter un coup d'œil. Je ne me souviens pas si distinct est possible dans plusieurs colonnes. Je pense que ça marchera aussi...
select distinct tag, product from mytable where tag in (101,102)