|
Сортировка ТЗ как в Запросе |
☑ |
0
Franchiser
гуру
12.02.20
✎
18:38
|
Делаю запрос к справочнику организации с сортировкой по коду.
В кодах есть коды с дефисами и без.
Если в запросе сортирую то коды с дефисами по порядку идут в конце.
Если в ТЗ сортирую то коды с дефисами идут в начале списка.
Как добиться того чтобы ТЗ сортировать так же как упорядочивалось в запросе?
Вариант со Сравнение значений тоже пробовал.
|
|
1
H A D G E H O G s
12.02.20
✎
18:40
|
сортируй кодом
|
|
2
Franchiser
гуру
12.02.20
✎
18:47
|
Все таки интересно почему в запросе сортировка не соответствует сортировке в ТЗ. Я понимаю там case sensitive, insensitive. Но почему дефисы по другому сравниваются?
|
|
3
Franchiser
гуру
12.02.20
✎
20:19
|
Похоже при упорядочивания в запросе дефис выкидывается в результате 00-006 и 00-005 идут не по порядку:
выбрать
"00-005" как тест
объединить все
выбрать
"000056" как тест
объединить все
выбрать
"00-006" как тест
объединить все
выбрать
"000056094" как тест
объединить все
выбрать
"00-009215" как тест
упорядочить по тест
|
|
4
Franchiser
гуру
12.02.20
✎
20:20
|
Результат запроса:
00-005
000056
000056094
00-006
00-009215
|
|
5
hhhh
12.02.20
✎
20:52
|
(4) в ТЗ сортировка средствами 1С, а в запросе или сортировка SQL или из операционной системы. Поэтому сортировки по-любому разные
|
|
6
Franchiser
гуру
12.02.20
✎
20:55
|
Да, возможно из-за collation.
В SQL также игнорируется.
Вот про игнорируемые символы статья:
|
|
7
Salimbek
12.02.20
✎
23:58
|
(4) Ваш тестовый запрос какой-то некорректный. Попробуйте так:
Выбрать * ИЗ (
выбрать
"00-005" как тест
объединить все
выбрать
"000056" как тест
объединить все
выбрать
"00-006" как тест
объединить все
выбрать
"000056094" как тест
объединить все
выбрать
"00-009215" как тест) Как Выборка
упорядочить по тест
|
|
8
Salimbek
13.02.20
✎
13:58
|
+(7) Хотя сейчас потестировал у себя. Точно так же получилось.
(6) Скорее всего из-за collation, потому что пробовал вместо "-" другие символы подставлять - они нормально работают, на сортировку не влияют
|
|
9
Franchiser
гуру
13.02.20
✎
16:25
|
(8) да, я об этом написал:
For example, Windows locales and Fedora Core locales ignore on the first level the "U+002D HYPHEN-MINUS" (and some other punctuation characters), which helps to sort in a "culturally correct" way, when "co-operation" is sorted near "cooperation": both after "convexity" and before "copper". I.e. the hyphen character is ignored on the first pass of comparison, it is checked later, when a sorting program needs to detect mutual order of the words "cooperation" and "co-operation", and the former goes first.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший