A ver si te entendí Jorge la tabla marca por producto es la que tiene los elementos que se han seleccionado, verdad... entonces tomando que me das una afirmación algo similar seria así:
(Por favor corrígeme si ando mal)
######## hice estas tablas de ejemplo ######
CREATE TABLE `tblmarcasactuales` (
`autono` INT(11) NOT NULL AUTO_INCREMENT,
`idMarca` VARCHAR(50) NULL DEFAULT '0' COLLATE 'utf8_spanish_ci',
`Marca` VARCHAR(50) NULL DEFAULT '0' COLLATE 'utf8_spanish_ci',
`Producto` VARCHAR(50) NULL DEFAULT '0' COLLATE 'utf8_spanish_ci',
PRIMARY KEY (`autono`)
)
COMMENT='Marcas que han sido utilizadas'
COLLATE='utf8_spanish_ci'
ENGINE=MyISAM
AUTO_INCREMENT=10
;
=======================
CREATE TABLE `tblmarcas` (
`autono` INT(11) NOT NULL AUTO_INCREMENT,
`idMarca` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_spanish_ci',
`Marca` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_spanish_ci',
PRIMARY KEY (`autono`)
)
COLLATE='utf8_spanish_ci'
ENGINE=MyISAM
AUTO_INCREMENT=6
;
=======================================
CREATE TABLE `tblproductos` (
`autono` INT(11) NOT NULL AUTO_INCREMENT,
`idMarca` VARCHAR(50) NULL DEFAULT NULL COLLATE 'utf8_spanish_ci',
`Producto` VARCHAR(150) NULL DEFAULT NULL COLLATE 'utf8_spanish_ci',
PRIMARY KEY (`autono`)
)
COLLATE='utf8_spanish_ci'
ENGINE=MyISAM
AUTO_INCREMENT=6
;
================ Despues las llene con datos
insert into tblmarcasactuales (idmarca, marca, producto) values ('HIT','HITACHI','Televisor de 20 pulgadas');
insert into tblmarcasactuales (idmarca, marca, producto) values ('HIT','HITACHI','Televisor de 19 pulgadas');
insert into tblmarcasactuales (idmarca, marca, producto) values ('MOT','MOTOROLA','Radio de onda corta 2500 MHz');
insert into tblmarcasactuales (idmarca, marca, producto) values ('NOK','NOKIA','telefono celular de gama alta');
insert into tblmarcas (idmarca, marca) values ('HIT','HITACHI');
insert into tblmarcas (idmarca, marca) values ('HIT','HITACHI');
insert into tblmarcas (idmarca, marca) values ('HIT','HITACHI');
insert into tblmarcas (idmarca, marca) values ('MOT','MOTOROLA');
insert into tblmarcas (idmarca, marca) values ('NOK','NOKIA');
insert into tblproductos (idmarca, producto) values ('HIT','Televisor de 20 pulgadas');
insert into tblproductos (idmarca, producto) values ('HIT','Televisor de 19 pulgadas');
insert into tblproductos (idmarca, producto) values ('HIT','Disco Duro 500Gigas 7200 revoluciones');
insert into tblproductos (idmarca, producto) values ('MOT','Radio de onda corta 2500 MHz');
insert into tblproductos (idmarca, producto) values ('NOK','telefono celular de gama alta');
================== Y finalmente una consulta sencilla para ver que elementos no estan listados en la tblmarcasactuales ( que es donde se registran las "compras")
drop view if exists productosNoElegidos;
create view productosNoElegidos as
select
prod.*
from tblproductos as prod
where concat(idMarca,producto) not in (
select concat(idMarca,producto) from tblmarcasactuales as act
)
Ojala que sea así lo que necesitas, seguimos en contacto Jorge.. suerte animo