
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
03.06.2004, 07:04:38
|
|||
|---|---|---|---|
Кто как работает с битовыми масками ? |
|||
|
#18+
Для каждой записи в таблице мне необходимо хранить ~10 битовых признаков записи, которые будут активно использоваться в условиях WHERE, как лучше поступить: насоздавать кучу полей или держать все в одном поле. При втором условии можно нарисовать UDF'ки, типа SetBit, ClearBit, IsBit, но т.к. в IB/FB нет констант, то обращение к этим функциям будет выглядеть так SetBit(Variable, 'ИМЯ_БИТОВОЙ_МАСКИ'). Может кто-нибудь подскажет альтернативные решения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.06.2004, 10:15:53
|
|||
|---|---|---|---|
Кто как работает с битовыми масками ? |
|||
|
#18+
Ну, наверно, не кучу, а ~10 Что смущает в применении UDF ? Неиспользование возможностей ускорения отбора при наличии индексов ? Вобщем, решение зависит от того, что за битовые дела и как с ними будешь работать, что они значат... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
03.06.2004, 16:11:56
|
|||
|---|---|---|---|
|
|||
Кто как работает с битовыми масками ? |
|||
|
#18+
я бы наверное полей насоздавал типа SMALLINT (при условии что кол-во признаков менятся не будет). хоть решение и некрасивое, зато работать побыстрее будет хотя учитывать многое надо: размер таблицы, размер записи, как часто выбираться будут... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=40&tablet=1&tid=1578498]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
175ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
2ms |
| others: | 193ms |
| total: | 447ms |

| 0 / 0 |
