das hört sich nach einer Antivalenz an. Falls nicht, möge man mir verzeihen, ist schon zwanzig Jahre her. Falls doch, und man definiere:
A = (i.id_itm = t.id_itm)
B = (t.id_cat = c.id_cat)
Sorry, zu schnell abgeschickt ohne noch mal nachzulesen. Sollte so aussehen:
A = ((i.id_itm = t.id_itm) AND (t.id_cat = c.id_cat) AND (c.category = 'a'))
B = ((i.id_itm = t.id_itm) AND (t.id_cat = c.id_cat) AND (c.category = 'b'))
So, und dann einsetzen, möglicherweise noch bool'sch vereinfachen...
HTH Robert