#0
by Виталий
Подскажите, пож., есть ли в языке запросов функция определения длины текстового поля, по аналогии с len в TSQL? Если нет, то как тогда можно определить длину поля?
#6
by Живой Ископаемый
2 если в качестве СУБД используется не ДБ2, то можно при помощи "ПОДОБНО [_столько подчеркиваний, сколько символов в строке__]"
#9
by Живой Ископаемый
НАДмозг, ага. :) только вроде без квадратных скобок просто вот так "ПОДОБНО _столько подчеркиваний, сколько символов в строке__" ==== Оператор проверки строки на подобие шаблону Оператор ПОДОБНО позволяет сравнить значение выражения, указанного слева от него, со строкой шаблона, указанной справа. Значение выражения должно иметь тип строка. Если значение выражения удовлетворяет шаблону – результатом оператора будет ИСТИНА, иначе – ЛОЖЬ. Следующие символы в строке шаблона являются служебными и имеют смысл, отличный от символа строки: % (процент): последовательность, содержащая любое количество произвольных символов _ (подчеркивание): один произвольный символ […] (в квадратных скобках один или несколько символов): любой одиночный символ из перечисленных внутри квадратных скобок В перечислении могут встречаться диапазоны, например a-z, означающие произвольный символ, входящий в диапазон, включая концы диапазона. [^…] (в квадратных скобках значок отрицания, за которым следует один или несколько символов): любой одиночный символ, кроме тех, которые перечислены следом за значком отрицания Любой другой символ означает сам себя и не несет никакой дополнительной нагрузки. Если в качестве самого себя необходимо записать один из перечисленных символов, то ему должен предшествовать <Спецсимвол>. Сам <Спецсимвол> (любой подходящий символ) определяется в этом же операторе после ключевого слова СПЕЦСИМВОЛ. Например, шаблон “%АБВ[0-9][абвг]_абв%” СПЕЦСИМВОЛ “” означает подстроку, состоящую из последовательности символов: буквы А; буквы Б; буквы В; одной цифры; одной из букв а, б, в или г; символа подчеркивания; буквы а; буквы б; буквы в. Причем перед этой последовательностью может располагаться произвольный набор символов.
#11
by Живой Ископаемый
2 я просто как-то, когда искал вопросы для собеседования, нашел такую задачку: как запросом отобрать элементы справочника номенклатуры, в наименовании которых 3 слова (то есть если два слова или четыре - то не нужно...)
#12
by Виталий
Ну, ты меня что ли совсем за юзера считаешь? :) Я с SQL 2,5 года работал. Это я с 1С только недавно начал дружить :) Поэтому я понимаю как работает ПОДОБНО :)
#19
by Живой Ископаемый
2 просто когда только начал изучать в8 решил написать конфу, в которой бы хранились художественные тексты на английском языке, и к которым можно было бы строить запросы с ПОДОБНо чтобы искать примеры употребления тех или иных слов.
#21
by МихаилМ
Когда Наименование = ПОДСТРОКА ( Наименование,1, 88) Тогда 88 Когда Наименование = ПОДСТРОКА ( Наименование,1, 1) Тогда 1 .... Когда Наименование = ПОДСТРОКА ( Наименование,1, 90) Тогда 90 Когда Наименование = ПОДСТРОКА ( Наименование,1, 91) Тогда 91 Когда Наименование = ПОДСТРОКА ( Наименование,1, 92) Тогда 92 Когда Наименование = ПОДСТРОКА ( Наименование,1, 93) Тогда 93 Когда Наименование = ПОДСТРОКА ( Наименование,1, 94) Тогда 94 Когда Наименование = ПОДСТРОКА ( Наименование,1, 95) Тогда 95 Когда Наименование = ПОДСТРОКА ( Наименование,1, 96) Тогда 96 Когда Наименование = ПОДСТРОКА ( Наименование,1, 97) Тогда 97 Когда Наименование = ПОДСТРОКА ( Наименование,1, 98) Тогда 98 Когда Наименование = ПОДСТРОКА ( Наименование,1, 99) Тогда 99 Когда Наименование = ПОДСТРОКА ( Наименование,1, 100) Тогда 100
#23
by Maxus43
а зачем? такие задачки очень редки, и можно просто в коде результат запроса обработать...
#24
by Jstunner
все таки интересный этот язык запросов, но когда вот так вот, простейшие вещи можно сделать только через задницу, начинаешь понимать
#25
by Maxus43
Запрос есть Запрос, получает данные, изврат типа - редко и вроде и не надо даже делать именно в запросе... Протестую против захламления языка запросов ненужными функциями!
#26
by Maxus43
+ итак умудряются такие запросы писать, что хочется выкинуться из окна, а если дать ещё и кучу функций ненужных...
#28
by vladnet
сейчас пришло в голову что тоже самое можно сделать бинарным делением пополам, тогда будет меньше условий )
#35
by Ахиллес
Не ко мне вопрос. Не я же TSQL создавал. Если есть, значит были основания для включения в язык.
#39
by hhhh
вы просто забыли о самом главном. Должна быть полная совместимость SQL- и файловой версии 1С.
#40
by vladnet
Да но должно быть быстрее, хотя кто его знает как SQL работает Впрочем я тестировал вариант такие запросы писать, в итоге решил что это плохо - быстродействие падает в разы, так что проще на клиенте обработать.
#41
by Виталий
По поводу высказываний, что многие функции в 1С не нужны, что можно заморочится сложным построением запроса - и все будет работать... Но вы забываете, что в таких случаях перестают работать индексы. В итоге страдает скорость выполнения запросов. Иначе - нужно усложнять логику кода 1С, что бы обработать результат запроса. Тоже не вариант. Поэтому, соглашусь с тем, что это минус для 1С
#42
by Живой Ископаемый
на самом деле неужно помнить что 1С - для автоматизации прежде всего финансового учета... Придумайте реальную учетную задачу, когда бы нам понадобилось - что? сгруппировать данные по длине наименования? это вообще смешно.. Если у вас от длины наименования зависит бизнес-логи - вряд ли это правильно... Нужно нормализовать это как-то... А нормализовать - это один раз написать и выполнить обработку.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- ТЗ. Удаление строки сдвигает строки?
- v8. Как в запросе определить уровень элемента справочника?
- v8 строка подключения V8.Connect
- Волшебнику и всем кто поможет по теме "v8 УРБД на v8 за четыре шага"
- v8: при v8 = Новый COMОбъект("V8.Application") дает ошибку ..
- v8: Не могу подключиться из V8 к V8
- v8: есть ли аналоги openconf для 1с v8
- v8: Как удалить 1С v8 ?
- v8: как убрать повторяющиеся строки в запросе?
- V8 - Как пронумеровать строки в запросе?
- v8: v8.2: Как при открытии формы определить что создается новый элемент ?
В этой группе 1С
- ЗУП 2.5.23: Табель не правильно заполняется
- Номер года в литерале типа 'Дата' превышает 3999
- WS-Ссылки
- Как контрагенту добавить несколько адресов доставки
- Перенос ПУБ - УПП
- Ошибка при вызове метода контекста (Записать)
- Проблема с переносом из УТ в Бух
- "Addon1C.Commands"
- Как перевести базу с SQL Enterprise Edition 2005 в SQL Standart Edition 2008?
- Почему падает 1Ска при загрузке V7plus.dll
- Конвертация данных правила конвер. объектов обработчик событие при загрузке объекта
- СКД. Параметры данных на форму
- Не выбран документ
- СКД. Представление документа с датой без времени
- УПП. Чек ккм не печатает.
- Как раскодировать зашифрованную обработку 1С
- Перевод кнопок 1С по умолчанию
- В отчете на построителе не сортируется результат по периоду.
- Разбивка по периодам в запросе
- Представление перечисления через COM