|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Добрый день! Насколько я понял, решения, без танцев з бубном, для сортировки Украинского алфавита и цифр в Oracle не существует или я не нашел решения? Код: plsql 1.
Не работает - цифры в конце списка. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2022, 18:19 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Ни разу не использовал NLSSORT, подсказать компетентно не смогу. Смогу ли скорректировать постановку задачи. Нужен test case и ссылка на документацию , где описано поведение кода, и почему вы ожидаете другого поведения. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2022, 19:03 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
dmdmdm, тест кейс Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Сортировка должна быть именно так как указано в "abc": Символы, Числа, Латинский алфавит, Украинский алфавит Что имеется виду под ссылкой на документацию - не понял. Другие СУБД, с которыми мне приходилось работать (MySql, MariaDb, MsSQL, MS Access, PostgreSQL), нормально справляються с этой задачей по умолчанию. Скажу больше, они даже индексы могут использовать при сортировке, но не суть. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2022, 19:18 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
По сути это сортировка как при nls_sort=binary только с учетом символов Украинского алфавита. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.01.2022, 19:50 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Сортировка должна быть Что имеется виду под ссылкой на документацию - не понял. Ссылка на документацию - пример у меня выше. И почему вы считаете, что _должно_ быть по-другому. В вашем test case у меня на 18-й версии одинаковый результат при ORDER BY field и ORDER BY 'NLS_SORT = UKRAINIAN'. Вероятно, я плохо знаю этот диалект. Видимо, 'і' - это не английская буква, а украинская. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 12:40 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
dmdmdm Видимо, 'і' - это не английская буква, а украинская. Есть еще Її, Єє, Ґґ. dmdmdm И почему вы считаете, что _должно_ быть по-другому. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 13:15 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
SergiiWПотому, что так работают все другие программы, которые умеют сортировать текст. Ну так зачем жрать кактус? Получайте из оракула данные как есть и потом сортируйте их другими программами. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 13:48 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
SergiiW, Я не совсем понял , вам нужен описанный порядок символов или описанный порядок символов при nls_sort=ukrainian ? То что вы описываете очень похоже на multilingual сортировку doc testcase Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55.
Regards Maxim ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 13:56 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
SergiiW Потому, что так работают все другие программы, которые умеют сортировать текст. Потому что это логично, потому что это принято на всем постсоветском пространстве (думаю и большинстве стран мира), что сначала символы, потом цифры, потом буквы! Вот только Oracle - исключение. Он сортирует как ему хочется. Код: plsql 1.
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Если у тебя есть "более другая" программа - приведи пример. Тебе же, насколько я понял, необходимо сохранить поведение как в binary. А именно чтоб заглавные буквы всегда шли перед строчными. В таком случае можно транслировать украинский алфавит в необходимый порядок. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 13:56 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Кобанчег, Спасибо (дякую)! Про такую возможность не знал, но это и есть танцы з бубнами. :( И без использования индексов. Наверно, для многих случаев, меня устроит generic_m. Ще раз дякую! ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 15:11 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
SergiiW Про такую возможность не знал, но это и есть танцы з бубнами. SergiiW Другие СУБД, с которыми мне приходилось работать (MySql, MariaDb, MsSQL, MS Access, PostgreSQL) Здесь сортировка не такая как тебе необходио, не так ли? Оракл даёт точно такой результат с помощью Код: plsql 1. 2. 3.
Так что претензии к Ораклу не до конца ясны. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 15:23 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Кобанчег, А не все так радужно как я думал Похоже снова грабли. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Дает: - 1 1- 11 1-а Почему 11 идет раньше 1-а? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 15:39 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Ну прочтите же, наконец, доку, смотреть больно на эти "эксперименты" ... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 15:52 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
SergiiW Почему 11 идет раньше 1-а? collate "en_GB" collate "en-GB-x-icu" ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 17:04 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
SergiiWПочему 11 идет раньше 1-а? Потому что это "dictionary order" и он игнорирует знаки притыкания. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 18:03 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Кобанчег, Украинский тут точно не при чем. И второй пример сортирует правильно. MySql сортирует правильно по умолчанию. Как добиться такого в Oracle? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 20:36 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov SergiiWПочему 11 идет раньше 1-а? Потому что это "dictionary order" и он игнорирует знаки притыкания. Что такое знаки притыкания? Почему их нужно игнорировать? Как это исправить? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 20:45 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Все ответы тут: Linguistic Sorting and Matching ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 20:48 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Кобанчег Покажи как ты получишь то же самое без танцев с бубном в других СУБД Никаких танцев з бубнами. Все правильно по умолчанию. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 20:56 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
ORA21cORA18cMariaDB 10.6MySQL8PG14-----1-1-1-1-1-1-а1-а1-а1-а11111111111-аDDDDdddddDІІІАаАААаАЯЯЯІіаааіІяяяЯяіііяЯ"Правильным" объявлен MySQL, всем на него равняться? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 21:19 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Asmodeus "Правильным" объявлен MySQL, всем на него равняться? Как заставить правильно сортировать MariaDB, думаю, проблем нет - utf8_unicode_ci. Но не суть. Итого. Сделать сортировку в порядке убывания Символи, Цифры, Латиница (Aa), Украинский алфавит (Aa) простым методом (без танцев с бубнами) не получиться? Наиболее близкое решение это использовать generic_m, но неверно (с моей точки зрения и моих пользователей ) сортирует при наличие "знаков притыкания" и сначала нижний регистр, потом верхний. Или я ошибаюсь и такую сортировку можно сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 21:45 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Спасибо всем, мого для себя нового узнал про сортировку. Ранее такими деталями даже не заморачивался. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 22:00 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Можно сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 22:04 |
|
UKRAINIAN и Сортировка
|
|||
---|---|---|---|
#18+
Возможное решение для моего случая(!) Код: sql 1.
Пример ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2022, 22:08 |
|
|
start [/forum/topic.php?fid=52&msg=40125129&tid=1879609]: |
0ms |
get settings: |
24ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
499ms |
get tp. blocked users: |
2ms |
others: | 284ms |
total: | 899ms |
0 / 0 |