support union primary key