Во-первых, единственная причина, по которой можно составить эту таблицу, - это если у вас есть отношение «многие ко многим».
В то время как у человека может быть много телефонных номеров, может ли один телефонный номер иметь много людей?
Если это так, то ваша схема реализует это требование, но мне кажется, что оно немного перегружено: -)
Во-вторых, это довольно простое соединение. Что вы хотите сделать, это сначала выбрать номера телефонов, о которых идет речь, затем с учетом этого выбрать идентификаторы лиц из третьей таблицы, а затем с учетом этого выбрать имена из первой таблицы. Что-то вроде:
ВЫБРАТЬ t1.name в качестве имени, t2.number из таблицы1 t1, table2 t2, table3 t3, где t2.number, например, «234%» и t3.personid = t1.id и t3.phoneid = t2.id;
Вы также можете переписать "blah.id = blah.id" как объединение, если вам нужна семантика внешнего объединения (включая определенные поля с NULL).