различия в postgres. OSX V Ubuntu
Так что я'Недавно мы пришли к выводу, что на postgres очень важны параметры сортировки и что многие комментарии относятся к поддержке OSX / locale как "сломанный»который не имеетпросветил меня. для целей этого вопроса яигнорируя параметры сортировки по умолчанию для таблицы / столбца и указав их явно.
мой ноутбук OSX с Postgres 9.2.4мой сервер Ubuntu с Postgres 9.1.9общее для обоих:
# show lc_collate ;
en_US.UTF-8
# show lc_ctype ;
en_US.UTF-8
на моем ноутбуке:
select ',' < '-' collate "en_US.UTF-8" as result;
true
Теперь мой сервер не имеет сортировки "en_US.UTF-8", но это имеет "en_US.utf8" (который я узнаю, это не одно и то же, хотя я ожидаю, что он будет вести себя одинаково)
select ',' < '-' collate "en_US.utf8" as result;
false
так вот'где яЯ волнуюсь. "C" порядок всегда говорил (для обеих машин), что ',' меньше чем '-', с которым мой мозг согласился бы.
какая реализация utf8 верна? и если бы кто-то мог указать мне на определение, которое помогло бы, так как в основном ятолько удалось найти обвинения в "сломанный» выравнивается на оссе. Так что я'буду беспокоиться, что явсю свою жизнь я ошибался, думая, что запятые перед дефисом, но вводят разумно зависимого арбитра текста, юникода и т. д. Python. который на сервере Ubuntu дает:
>>> print u',' < u'-', ',' < '-'
True True
Так что я'Я чувствую, что концепция сортировки на моем сервере Ubuntu больше, чем на моем OSX-сервере. но я нене иметь "собственно» сопоставление для создания моейen_US.UTF-8" сопоставление с аля "создать сопоставление, так что я'Я заблудился относительно того, как создать паритет, или какой ответ (true / false) я должен использовать в качестве правильной ссылки. (помимо того, что лично перешёл к порядку ascii, для чего, в конце концов, есть символы ascii).
Итак, в двух словах, какой правильный ответ для en_US.UTF-8?