|
|
|
Еще раз про кладр
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. нашел такую статейку http://mik-demidov.blogspot.ru/2014/02/kladr-firebird.html перелил все данные как в ней. сделал вьюхи регионы Код: plsql 1. 2. 3. 4. 5. районы Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. города Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. прочие населенные пункты Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. улицы Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Связи в выборках такие получились районы области Код: plsql 1. все города области Код: plsql 1. где sities_view.code2 = 0 - это основные города области. при другом значении code2 - районные города. населенные пункты области (конкретного района области) Код: plsql 1. ну и улицы. районных населенных пунктов Код: plsql 1. улицы городов Код: plsql 1. по поводу выборки улиц населенных пунктов и городов не особо уверен. Может кто подправит? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 10:52 |
|
||
|
Еще раз про кладр
|
|||
|---|---|---|---|
|
#18+
sergq , вечер добрый. Полагаю, что я, как автор «той статейки», могу кое-что подсказать. В КЛАДРе иерархия составных частей адреса выглядит так: Регион —› [ Район ] —› [ Город | Населённый пункт ] —› [ Улица ] —› [ Список домов ] В квадратных скобках — необязательные элементы. Город и населённый пункт — вещи взаимоисключающие, и никогда в одном адресе одновременно не встречаются. Более того, сам смысл слов «город» и «населённый пункт» весьма размыт, иногда два одинаковых соседних небольших городка называются: один — городом, а другой — населённым пунктом. Видно, что улица может «принадлежать» не только городу или другому населённому пункту, но и району, и даже региону. Типичный пример: Москва и Санкт-Петербург, — они в КЛАДРе считаются регионами, но содержат улицы, минуя все остальные уровни иерархии. Более того, никто не запрещает иметь внутри такого региона ещё и города (пригороды), в которых тоже есть улицы, причём иногда даже с такими же названиями. К сожалению, конкретные примеры сейчас привести не могу (база осталась на работе), но мы это всё проверяли. (Кстати, для полноты картины: улицы тоже являются необязательными элементами адреса, то есть существуют дома, которые «принадлежат» посёлку или городу, не имея даже улицы в составе адреса.) Поэтому STREETS_VIEW у вас охватывает только очень малую часть улиц. Честно говоря, я вообще не вижу смысла в условии code4 <> 0, ведь вся таблица kladr_street не содержит ничего, кроме улиц. Если убрать условие, то получится: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Правда, тогда непонятно, зачем вообще создавать отдельный view для этого. Что касается запросов для улиц, то в условии where нужно всегда явно указывать все 4 кода, чтобы не было путаницы, то есть, примерно так: Код: sql 1. и явно передавать нули вместо ненужных элементов. Надеюсь, я немного прояснил ситуацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.02.2015, 23:27 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=23&tid=1540654]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 12ms |
| total: | 141ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...