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

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

Дни недели [D7, MSSQL]


Страницы:   1 2 3

Iddqd ©   (2004-07-06 11:27:00) 

Уважаемые мастера, помогите решить следующую задачу:
В таблице есть строковое поле 'DAYS' в формате : пвсчпсв (обозначающее соотвественно понедельник, вторник и т.д). Оно может принимать значения : п_сч_св или _____св и т.д. Пользователь в программе выбирает с помощью чекбоксов нужные дни недели и соотвественно должны отразиться те записи которые включают эти дни. Пока это решено на уровне самой программы. Т.е выбираются все записи а уж потом не нужные отсеиваются. Как сделать подобное в SQL запросе.


Fay   (2004-07-06 12:27:00) [41]

Хранить 1 байт как флаговый. 1 = п, 5 = п_с____ и т.д.


Наталия   (2004-07-06 11:49:00) [42]

Тогда придется делать какую-то имитацию семи логических полей :))
Что-то типа substr(days,1,1), substr(days,2,1) и т.п. (не знаю только как в MSSQL называется функция, выделяющая из строки подстроку)


Johnmen   (2004-07-06 11:47:00) [43]

"пвсч_с_" :
(DAYS LIKE 'п______') OR
(DAYS LIKE '_в_____') OR
(DAYS LIKE '__с____') OR
(DAYS LIKE '___ч___') OR
(DAYS LIKE '_____с_')


Iddqd   (2004-07-06 11:44:00) [44]

"Like" не пойдет. Например юзер выбрал "пвсч_с_" , тогда блок с плок со значением "_в_с___в" должен отобразиться


Соловьев   (2004-07-06 11:39:00) [45]

не-а :)
ИМХО, надо было структуру сделать таблицы нормальной где ввести 7 логических полей.


Соловьев   (2004-07-06 11:38:00) [46]

select *
from table
where days like 'п_сч_св'


Страницы:   1 2 3

Наверх

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