SQL изменяет значение в верхний регистр с указанной локалью - PullRequest
0 голосов
/ 24 сентября 2018

Есть ли в SQL какая-либо функция для ввода в верхний регистр строки с указанным языковым стандартом?Функция upper(a_string) принимает один параметр, которого недостаточно для символов, отличных от ASCII.

Например, я хочу запустить такой оператор, чтобы изменить все строчные символы в таблице со значениями, содержащими турецкие символы:

UPDATE a_table SET a_field = UPPER(a_field, TurkishLocale);

Есть ли такая функция?Если нет, то как я могу это определить?

Ответы [ 3 ]

0 голосов
/ 24 сентября 2018

Вы можете использовать сопоставление с учетом регистра, например

 UPDATE a_table SET a_field = UPPER(a_field COLLATE Turkish_CS_AI)
0 голосов
/ 24 сентября 2018

Вы должны использовать модуль расширения ICU , чтобы получить зависящие от локали функции case в sqlite.

0 голосов
/ 24 сентября 2018

Функция UPPER(a_field) будет в верхнем регистре всей ячейки данных.Если вы хотите ввести в верхний регистр определенный символ ячейки, вы можете использовать REPLACE(a_field, 'tr', 'TR') для удовлетворения ваших потребностей.

...