Имя: Пароль:
1C
1С v8
Интересная особенность в сравнении строк
0 Sh18
 
09.02.23
09:28
1С:Предприятие 8.3 (8.3.22.1709) дает такое в сравнении
"а" < "А" = Истина
Буквы русские, код а = 1072, код А = 1040.
При этом
"б" < "А" = Ложь, код б = 1073
Это стоит в проверке, что введена не латинская буква, вдруг на русскую "а" стал говорить, что она латинская. Похоже, у нас раньше не было префикса "а".
В сравнениях все маленькие буквы меньше больших (и латинские тоже), хотя по коду наоборот. Почему-то был уверен, что они по коду символа выстроены.
1 Волшебник
 
модератор
09.02.23
09:28
"В сравнениях все маленькие буквы меньше больших"
Это же логично
2 lodger
 
09.02.23
09:33
(0) ты ещё по алфавиту сравни!
а < б
а < Б
3 Волшебник
 
модератор
09.02.23
09:36
Сравнение без учета регистра можно произвести функций СтрСравнить. Поддерживается с платформы 8.3.6.

Возвращает:
-1 - первая строка меньше второй
1 - первая строка больше второй.
0 - первая строка равна второй

кроме того,
https://its.1c.ru/db/metod8dev/content/2615/hdoc
4 lodger
 
09.02.23
10:30
(3) или исполнить нрег перед сравнением.
5 Гипервизор
 
09.02.23
11:09
(0) Сравнивайте в запросе. )
6 НафНаф
 
09.02.23
11:32
Не хватает в 1С компараторов, это да
7 hockeyist
 
09.02.23
11:35
(0) В базах данных есть такое понятие "порядок сортировки". То, что вы видите, не в 1С выдумали. Обычное дело
8 hockeyist
 
09.02.23
11:40
(0) Подумайте сами, что было бы, если бы в базах данных все строки сортировались бы по кодам символов