Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.06.17;
Скачать: CL | DM;

Вниз

Что-то не соображу как запрос сформировать, пожскжите плиз...   Найти похожие ветки 

 
ChainickDenis   (2007-03-26 23:18) [0]

Есть в записи некое поле, скажем STATUS типа integer, но использую его как байт, где каждый бит имеет некое значение.

Хочу из базы выбрать все записи с определенным значением бита.

Например хочу выбрать все записи со статусом с установленным 7-м битом:

SELECT ALL P.NAME from P as "name.db" WERE ((P.STATUS and 128) <> 0)

Но что-то мне подсказывает что здесь не все так просто...

Подскажите пожалуйста.


 
Johnmen ©   (2007-03-27 00:12) [1]

Что за СУБД?


 
ChainickDenis   (2007-03-27 08:50) [2]


> Johnmen ©   (27.03.07 00:12) [1]


Interbase или парадокс. Не рашил еще. Пока думаю.

А есть разница?


 
ЮЮ ©   (2007-03-27 09:28) [3]

>Interbase или парадокс. Не рашил еще. Пока думаю.


может тогда MS SQL:
& (Bitwise AND)
Performs a bitwise logical AND operation between two integer values.


Или подумаешь о нормальном (реляционном) подходе к данной проблеме? Т.е. вместо поля - "массива битов" добавить таблицу с отношением один ко многим.


 
Jan   (2007-03-27 09:49) [4]


> Interbase или парадокс. Не рашил еще. Пока думаю.

А что думать? интересно какие у тебя критерии :)
Из бесплатных я бы выбрал: MSDE+Express Edtion MSSQL, FB 2.0.1, Oracle Express, DB2 Express.


 
Jan   (2007-03-27 09:50) [5]


> Есть в записи некое поле, скажем STATUS типа integer, но
> использую его как байт, где каждый бит имеет некое значение.
>
>

А зачем? В чем суть?


 
Jan   (2007-03-27 09:51) [6]


> Но что-то мне подсказывает что здесь не все так просто..
> .

В FB можешь через UDF это сделать.


 
Johnmen ©   (2007-03-27 10:57) [7]

В IB/FB делается без UDF.


 
ANB ©   (2007-03-27 11:09) [8]


> ChainickDenis   (26.03.07 23:18)

запрос такой написать можно. Для разных СУБД он будет выглядеть по разному. Но на всех будет одна и та же проблема - фулл-скан таблицы.
ИМХО - хреновая идея. Флаги в числе хранить, в принципе, можно, но искать по ним - издевательство над сервером и юзером. Ну или в таблице должно быть не более 100 записей.


 
Desdechado ©   (2007-03-27 11:25) [9]

> Хочу из базы выбрать все записи с определенным значением бита.
> Interbase или парадокс. Не рашил еще. Пока думаю.
Я торчу от такого подхода!
Еще ничего не известно, но уже пишем запросы и удивляемся, что они не работают.


 
ChainickDenis   (2007-03-28 09:32) [10]


> Я торчу от такого подхода!


Нормальный подход чайника...
Выберу базу которая подходит под мои требования, и если потом мне будет хреново 0 пирипишу все заново..

Вобщем я все понял: битовоориентированные запросы - экзотика.

Спасибо.

Денис.


 
evvcom ©   (2007-03-28 10:43) [11]

> [10] ChainickDenis   (28.03.07 09:32)
> битовоориентированные запросы - экзотика.

Ну почему ж? В MSSQL они на уровне сервера поддерживаются. Там есть битовые поля.



Страницы: 1 вся ветка

Текущий архив: 2007.06.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.013 c
15-1179922587
Loginov Dmitry
2007-05-23 16:16
2007.06.17
Мифы о безопасном ПО


2-1180100114
забыл ник %)
2007-05-25 17:35
2007.06.17
Подсказка в трее


6-1164180002
jorsand
2006-11-22 10:20
2007.06.17
Подскажите как получить доступ к сетевому ресурсу


6-1164722681
стьюдентЪ
2006-11-28 17:04
2007.06.17
Не приходит текст посланый по сокету


15-1179646386
Knight
2007-05-20 11:33
2007.06.17
Выговор Slider007&amp;#133 за пропущенное 19-ое мая&amp;#133