create unique index on the_table (least(from,to), greatest(from,to)); Irá evitar adicionar (B,A,100) se (A,B,100) já estiver na tabela.