Имя: Пароль:
1C
1С v8
Подобно или проверка на равенство строки
0 smilemanrus
 
28.03.18
10:40
Уважаемые форумчане, хочу поинтересоваться на счет мат.части по поводу подстроки в запросе, что быстрее отработает:
Таблица.Строка ПОДОБНО "%кукареку%"
или я могу сначала получить подстроку Таблица.Строка и буду сравнивать так
втТаблица.Подстрока = &кукареку
Я проверял, у меня вышло, что "ПОДОБНО" быстрее, а почему ?
1 Cool_Profi
 
28.03.18
10:41
наверное, потому что у тебя поисковых строк 100500 и ты делаешь запрос в цикле по каждой?
2 smilemanrus
 
28.03.18
10:44
(1) нет, все делалось в запросе, для ясности могу привести код запроса 2-го варианта:
ВЫБРАТЬ
    Таблица.Ссылка,
    ПОДСТРОКА(Таблица.Наименование, 2, 5) КАК Подстрока
ПОМЕСТИТЬ втТаблица
ИЗ
    Таблица КАК Таблица
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    втТаблица.Ссылка,
    втТаблица.Подстрока
ИЗ
    втТаблица КАК втТаблица
ГДЕ
    втТаблица.Подстрока = &Подстрока
3 Cool_Profi
 
28.03.18
10:46
Зависит от объёмов данныъ
4 smilemanrus
 
28.03.18
10:50
(3) таблица действительно большая
5 Волшебник
 
28.03.18
10:54
это будет очень долго
Таблица.Строка ПОДОБНО "%кукареку%"

это будет быстро при наличии индекса
Таблица.Строка ПОДОБНО "кукареку%"

это будет очень быстро при наличии индекса
Таблица.Строка = "кукареку"
6 smilemanrus
 
28.03.18
11:01
(5) в моём случае оно не индексировано
7 Волшебник
 
28.03.18
11:25
(6) Проиндексируй
8 smilemanrus
 
28.03.18
11:27
(7) Отличная идея
9 hhhh
 
28.03.18
11:47
(8) а если так?

ГДЕ
    ПОДСТРОКА(Таблица.Наименование, 2, 5) = &Подстрока

наверно еще быстрее будет. без всяких вт.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.