|
|
|
мониторинг для сотовых компаний
|
|||
|---|---|---|---|
|
#18+
Нужно создать базу для мониторинга телефонных разговоров. Главные данные такие: Код: plaintext 1. 2. 3. 4. 5. номера состоят из 10 символов, перые 3 - оператор, затем 2 символа - регион. Запросы будут с группировкой по операторам и регионам. должна быть табличка справочная типа Код: plaintext 1. 2. 3. 4. 5. как грамотно спроектировать главную таблицу? изучаю форум и доку, пока так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. полный номер при необходимости вычисляется (или вычислимое поле попробовать сделать) плюс индексы по oper1, operreg1,oper2,operreg2 но чота не нравится, может разбивать полный номер на три поля оператор-регион-номер и писать в них не идентификаторы а реальные числа? и сделать состовной индекс по полям oper1, operreg1? почему то в методичке тогда написано, что в справочной таблице должен быть идентификатор? извиняюсь за много букв) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2010, 20:49 |
|
||
|
мониторинг для сотовых компаний
|
|||
|---|---|---|---|
|
#18+
или всетаки хранить просто номера Код: plaintext 1. 2. 3. 4. 5. создать индекс по функции substr(num1,3) и по функции substr(num1,5) - итого 4 индекса а потом делать group by substr(num1,3) или group by substr(num1,5), как потребуется пожалста, подскажите, как правильнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2010, 21:19 |
|
||
|
мониторинг для сотовых компаний
|
|||
|---|---|---|---|
|
#18+
новыйчайникномера состоят из 10 символов, перые 3 - оператор, затем 2 символа - регион.Если это настоящая база, а не учебная, то там все намного сложнее. Блоки номеров могут быть очень разные, например, размером в 1000 номеров. Или граница может не совпадать с цифрой, например, abcdef0000-abcdef6999 - это один регион/оператор, abcdef7000-abcdef9999 - другой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 13:23 |
|
||
|
мониторинг для сотовых компаний
|
|||
|---|---|---|---|
|
#18+
Кстати, эти блоки могут иногда меняться. И наверняка попадутся такие номера, которые невозможно разделить на части исходя из имеющихся на текущий момент данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 13:25 |
|
||
|
мониторинг для сотовых компаний
|
|||
|---|---|---|---|
|
#18+
новыйчайник номера состоят из 10 символов, перые 3 - оператор, затем 2 символа - регион. Запросы будут с группировкой по операторам и регионам. должна быть табличка справочная типа Код: plaintext 1. 2. 3. 4. 5. как грамотно спроектировать главную таблицу? изучаю форум и доку, пока так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. полный номер при необходимости вычисляется (или вычислимое поле попробовать сделать) плюс индексы по oper1, operreg1,oper2,operreg2В справочние лучьше диапазоны номеров, а в основной просто номера. Ну и не экономьте, семёрочку-то в начале поставьте, вдруг ненароком за границу-то позвонит кто :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:27 |
|
||
|
мониторинг для сотовых компаний
|
|||
|---|---|---|---|
|
#18+
база учебная, задача на проектирование таблицы, предполагается, что она очень большая и запросы в основном с группировкой по операторам, по операторам-регионам, плюс условие - данные либо за день, либо за какой-то период не могу решить, лучше хранить полные номера и новыйчайник создать индекс по функции substr(num1,3) и по функции substr(num1,5) - итого 4 индекса а потом делать group by substr(num1,3) или group by substr(num1,5), как потребуется или хранить в полях и делать составной индекс (оператор, регион)? теоретически как правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:35 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=36831539&tid=1542557]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 495ms |

| 0 / 0 |
