Tables like... create table items ( itemid int(11) default 0 not null, other_data text, primary key (itemid); ); create table ratings ( itemid int(11) default 0 not null, ratingtype varchar(32) default '' not null, rating int(11) default 0 not null, primary key (itemid,ratingtype), key (itemid,ratingtype,rating) }; SELECT * FROM items AS I, ratings AS R WHERE R.itemid = I.itemid AND R.ratingtype = 'usability' AND R.rating >= 8;