|
Сравнение строк с учетом регистра в запросе | ☑ | ||
---|---|---|---|---|
0
LevelUP
26.12.16
✎
13:04
|
Здравствуйте.
Вот есть например запрос ВЫБРАТЬ ЗначенияСвойствОбъектов.Ссылка ИЗ Справочник.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов где ЗначенияСвойствОбъектов.наименование = "ТЕХНО-ромашка" Для меня было несколько неожиданно, что запрос при выполнении возвращает элемент с наименованием "техно-ромашка" (вместо "ТЕХНО-ромашка"), то есть не учитывает регистр. Есть ли возможность сделать сравнение строк в запросе с учетом регистра? |
|||
1
Мимохожий Однако
26.12.16
✎
13:15
|
Попробуй использовать спецсимволы в шаблоне
|
|||
2
Мимохожий Однако
26.12.16
✎
13:16
|
Оператор ПОДОБНО позволяет сравнить значение выражения, указанного слева от него, со строкой шаблона, указанной справа. Значение выражения должно иметь тип строка. Если значение выражения удовлетворяет шаблону – результатом оператора будет ИСТИНА, иначе – ЛОЖЬ.
Следующие символы в строке шаблона являются служебными и имеют смысл, отличный от символа строки: % (процент): последовательность, содержащая любое количество произвольных символов _ (подчеркивание): один произвольный символ […] (в квадратных скобках один или несколько символов): любой одиночный символ из перечисленных внутри квадратных скобок В перечислении могут встречаться диапазоны, например a-z, означающие произвольный символ, входящий в диапазон, включая концы диапазона. [^…] (в квадратных скобках значок отрицания, за которым следует один или несколько символов): любой одиночный символ, кроме тех, которые перечислены следом за значком отрицания Любой другой символ означает сам себя и не несет никакой дополнительной нагрузки. Если в качестве самого себя необходимо записать один из перечисленных символов, то ему должен предшествовать <Спецсимвол>. Сам <Спецсимвол> (любой подходящий символ) определяется в этом же операторе после ключевого слова СПЕЦСИМВОЛ. Например, шаблон “%АБВ[0-9][абвг]\_абв%” СПЕЦСИМВОЛ “\” означает подстроку, состоящую из последовательности символов: буквы А; буквы Б; буквы В; одной цифры; одной из букв а, б, в или г; символа подчеркивания; буквы а; буквы б; буквы в. Причем перед этой последовательностью может располагаться произвольный набор символов. см. также: Логические выражения |
|||
3
Лефмихалыч
26.12.16
✎
13:16
|
поставить базе case sensitive collation - развве что. Но ты не хочешь этого делать.
|
|||
4
Zmich
26.12.16
✎
13:18
|
Оставить запрос как есть, при обходе результата отбрасывать ненужные.
|
|||
5
LevelUP
26.12.16
✎
13:20
|
(1) что-то не догнал как я его могу использовать в моей ситуации
|
|||
6
LevelUP
26.12.16
✎
13:21
|
(4) неплохой вариант, так и поступлю, всё лучше чем простой перебор.
|
|||
7
LevelUP
26.12.16
✎
13:22
|
(3) а где это ставится? просто для повышения кругозора.
|
|||
8
Живой Ископаемый
26.12.16
✎
13:26
|
2(7) в базе данных
|
|||
9
Лефмихалыч
26.12.16
✎
13:27
|
(7) в свойствах базы данных при создании оной
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |