
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
19.01.2010, 08:34
|
|||
|---|---|---|---|
|
|||
частично повторяющиеся записи |
|||
|
#18+
Упрощенно: - таблица домов, содержащая информацию о доме (id, id_street, тип, серия, год постройки и еще куча подобных полей) - справочник улиц (id и назв. улицы). собственно такой вопрос - у некоторых домов может быть двойной адрес. Как лучше поступить? Была идея добавить в таблицу домов поле, что-то вроде id_alt_house, в которое записывать id дома по альтернативному адерсу. Но этот вариант как-то мне не совсем нравится. Добавлять в таблицу целых 2 поля типа id_alt_street и alt_house_number тоже как-то не вполне нравится. Есть идеи лучше? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2010, 08:38
|
|||
|---|---|---|---|
частично повторяющиеся записи |
|||
|
#18+
Переходите от один-ко-многим к многие-ко-многим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2010, 08:53
|
|||
|---|---|---|---|
|
|||
частично повторяющиеся записи |
|||
|
#18+
Переходите от один-ко-многим к многие-ко-многим. Как вы это видите на практике? да, забыл написать, база mysql (MYISAM). а требование такое чтобы возможно было по первому адресу найти второй и наоборот. Если вносить 2 записи с полем id_alt_house то порождается избыточность данных, если добавлять 2 поля id_alt_street и alt_house_number то у большинства записей они будут пустовать, хотя это скорее всего самый приемлимый вариант. Какие идеи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2010, 09:17
|
|||
|---|---|---|---|
частично повторяющиеся записи |
|||
|
#18+
Такой вариант: Из таблицы домов поле id_street убираем. Создаем еще одну таблицу в которой храним связи между домами и улицами. Эта таблица содержит всего два поля id_hous и id_street. Тогда если дом стоит на двух улицах в этой таблице будет две записи. Например: id_hous id_street 3 5 3 7 Но еще вроде номер дома тоже может быть разный? Тогда можно сюда добавить третье поле - номер дома. id_hous id_street Number 3 5 34 3 7 43а ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.01.2010, 15:19
|
|||
|---|---|---|---|
частично повторяющиеся записи |
|||
|
#18+
Viktor_dТакой вариант: Из таблицы домов поле id_street убираем. Создаем еще одну таблицу в которой храним связи между домами и улицами. Эта таблица содержит всего два поля id_hous и id_street. Тогда если дом стоит на двух улицах в этой таблице будет две записи. Например: id_hous id_street 3 5 3 7 Но еще вроде номер дома тоже может быть разный? Тогда можно сюда добавить третье поле - номер дома. id_hous id_street Number 3 5 34 3 7 43аПо моему, ещё правильнее для такой задачи разделить бизнес-сущности "дом" и "адрес". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=32&tablet=1&tid=1542884]: |
0ms |
get settings: |
4ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
141ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 420ms |

| 0 / 0 |
