1

我有几个域名以 idn 格式(“xn--”)保存在数据库中。我想运行一些统计查询,但是在计算这些域名上的字符时遇到问题

SELECT
    dom_name,
    char_length(dom_name) as raw_length, -- counted with zone extension for now
FROM
    my_domains_table;

当然,我对“xn--”域有误,我想从 sql 中获取计数(不进一步使用 php 或其他语言)。

或者,请给我一些建议如何做得更好。

- 首先将域名以 UTF-8 格式保存到表中会很棒,但现在这不是一个选项 :)

4

1 回答 1

2

如果您可以将不受信任的语言安装到数据库中,例如PL/PerlUor PL/PythonU,那么您可以punycode_decode使用Net::IDN::Encodeperl 模块或decode('idna')python 字符串类成员函数创建函数。

如果你不这样做,那么你需要使用 pl/pgsql 来实现它,这并不容易。

于 2011-07-28T14:00:31.020 回答