Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Битовые операции в SQL


bumper ©   (2006-07-28 00:12:00) 

Здравствуйте.
Выскажитесь, знающие, как элеганто проверить определённый бит числового поля в SQL запросе?
м.б. существует какой-то синтаксис для манипуляции битами?
UDF пока в расчёт не берём......и деление не сильно приветствуется....хотя если без него никак.......... :)


Desdechado   (2006-07-28 17:38:00) [1]

ЮЮ ©   (28.07.06 11:30) [5]
в FB2 появилась возможность построения индекса по выражению, в т.ч. с участием функций


Медведъ   (2006-07-28 17:28:00) [2]

[5]


Desdechado   (2006-07-28 15:47:00) [3]

Johnmen ©   (28.07.06 11:25) [4]
есть подозрение, что UDF работает быстрее в силу скомпилированности кода, а не интерпретации исполнителем команд


Ega23   (2006-07-28 11:33:00) [4]

В MSSQL есть "|" и "&".
Не знаю, правда, они из T-SQL или из ANSI пришли...


ЮЮ   (2006-07-28 11:30:00) [5]

Если скорость важна, то почему так хочется полного сканирования таблицы?


Johnmen   (2006-07-28 11:25:00) [6]

Пример проверки 5-го бита в поле F (integer):
WHERE CAST(F/16.0-0.5 AS INT)/2.0 -
 CAST((CAST(F/16.0-0.5 AS INT)-0.5)/2.0 AS INT) > 0


bumper   (2006-07-28 11:07:00) [7]

БД Firebird 1.5.3.... Биты, потому что индексов по ним не надо совсем, а разница между между 2-мя байтами (smallint) и 16-тью (те же флаги, но в отдельных полях) особенно заметна, если записей этак чуть больше миллиона.....

...Долго мучившись, пришёл к выводу, что элегантнее чем UDF изобрести не удастся...... Поправьте если не так..... Ибо скорость тоже важна.


ЮЮ   (2006-07-28 09:36:00) [8]

>Осталось выяснить, что за БД

А потом сказать о неверной структуре БД :) Почему биты, а не таблица с отношением 0..N ?


Johnmen   (2006-07-28 09:08:00) [9]

Осталось выяснить, что за БД


Наверх

Титульная страница Поиск, карта сайта Написать письмо