Postgresql конвертирует японскую полную ширину в половинную ширину - PullRequest
0 голосов
/ 14 сентября 2018

Я манипулирую данными на японском языке, и в некоторых японских словах есть английские слова и цифры.

the, 松井 ケ 丘 3, コ メ リ H & G, 篠 路 7-1 являются примерами.

Я хотел преобразовать эти английские и числовые значения во всю ширину в половинную ширину, бросая функцию или любыми возможными способами.

вывод входного сигнала выше должен быть похож на "SYSKEN, 丘 ケ 丘 3, コ メ リ H & G, 篠 路 7-1"

Если кто-нибудь знает лучший способ начать, я был бы признателен.

1 Ответ

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

Как насчет использования функции translate ()?

-- prepare test data
CREATE TABLE address (
    id integer,
    name text
);
INSERT INTO address VALUES (1, 'SYSKEN, 松井ケ丘3, コメリH&G, 篠路7-1');

-- show test data
SELECT * from address;

-- convert Full-Width to Half-Width Japanese
UPDATE address SET name = translate(name,
    '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ',
    '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
);

-- see the converted data
SELECT * from address;

Этот код сделал столбец с именем "SYSKEN, 松井 ケ 丘 3, コ メ リ H & G, 路 路 7-1".

...