Lotsia PLM: Форум по семейству систем PLM/PDM/TDM/ERP/Workflow

Для специалистов по внедрению систем, профессиональных администраторов и пользователей.
Текущее время: 19 ноя 2018, 21:40

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
СообщениеДобавлено: 25 апр 2008, 08:32 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
всем привет посоветуйте как красиво решить следующую задачу

у меня есть объект, у него есть миллион свойств - любые комбинации из которых я кодирую в строковом атрибуте т.е. генерю некий уникальный строковый id
например так
Код:
T00-14F01-15-00L02-14-15

здесь лежат 8 базовых свойств каждое из которых представлено 100 возможными вариантами

проблема в чем? - мне нужно в отчетах очень очень быстро анализировать данную строчку с целю фильтрации ее как по отдельному свойству так и по комбинации свойств

грубо говоря
-имеем фиксированную строку
-знаем в какой позиции лежит то или иное свойство
-знаем его длину (в данном случае 2 символа)

нужно допустим сделать выборку по двум из них
я хочу сделать что то типа наложения/пересечения с шаблоном

типа
Код:
...
where
...
atrib.value XOR 'XXXXXXX__XXXXXXX__XXXXXX' =XXXXXXX01XXXXXXX02XXXXXX

конечно выглядит дико - но мне нужно именно что-то в этом духе
причем где лучше разбирать строку или на сервере в чистом SQL или на клиенте в LotsiaSQL непонятно :wink: а как непонятно вообще :wink: :wink:

_________________

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный



Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 25 апр 2008, 08:53 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 15 июл 2004, 15:12
Сообщения: 420
Откуда: Подольск
Благодарил (а): 8 раз.
Поблагодарили: 2 раз.
Попробуй like c его групповыми символами

Код:
...value like '_______01_______02%'

_________________
Ах и с ними невозможно
И без них никак нельзя


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 25 апр 2008, 09:00 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
к сожалению не пойдет - символ _ означает любой символ строки и соответственно по шаблону
Код:
...value like '_______01_______02%'
я получу много мусора

если бы в SQL были бы регулярные выражения....

_________________

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный



Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 25 апр 2008, 09:07 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
а что если так
т.е. выбирать свойства не по позициям а именовать их и работать по имени т.е. вместо
Код:
T00-14F01-15-00L02-14-15

сделать
Код:
T00-14F01a15b00L02c14d15


и делать выборку
Код:
... value like 'F01'
    and
... value like 'L02'   


хотя тоже не очень красиво выглядит.....
что скажешь?

_________________

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный



Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 25 апр 2008, 09:23 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 15 июл 2004, 15:12
Сообщения: 420
Откуда: Подольск
Благодарил (а): 8 раз.
Поблагодарили: 2 раз.
Если честно, не понял чем не устраивает мой пример (первые 7 символов все равно какие, 8и9='01', следующие 7 символов все равно какие, 17и18='02', следующие символы все равно какие). Чем не выборочная фильтрация по двум параметрам, записанным в 8,9 и 17,18 позициях?

_________________
Ах и с ними невозможно
И без них никак нельзя


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения:
СообщениеДобавлено: 25 апр 2008, 09:23 
Не в сети
Активный участник
Аватара пользователя

Зарегистрирован: 24 авг 2006, 08:06
Сообщения: 1646
Откуда: 55.745578,37.665825
Благодарил (а): 8 раз.
Поблагодарили: 3 раз.
слушай :wink: меня переклинило - пятница наверное
Код:
select my.value as path
  from my.maind
 where my.value LIKE  'пора на море... ' and my.value not LIKE  'нужно работать... '


короче LIKE - то что нужно СПАСИБО :wink:

_________________

Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный



Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB