Postgresql:如何对列中字符的ASCII码求和?

Posted

技术标签:

【中文标题】Postgresql:如何对列中字符的ASCII码求和?【英文标题】:Postgresql: How to sum the ASCII codes of characters in a column? 【发布时间】:2019-06-05 03:54:22 【问题描述】:

示例设置:

CREATE TABLE tbl (word TEXT);
INSERT INTO tbl VALUES ('abc');
INSERT INTO tbl VALUES ('def');

如何编写一个查询来返回每一行的word中字符的ASCII码总和?

例如,第一行应为294('abc' 变为 97+98+99=294),第二行应为 303('def' 变为 100+101+102=303)。

【问题讨论】:

【参考方案1】:

以下似乎有效:

select
    word,
    (select sum(ascii(regexp_split_to_table)) from regexp_split_to_table(word, ''))
from tbl;

【讨论】:

以上是关于Postgresql:如何对列中字符的ASCII码求和?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 PostgreSQL 中对列的一部分进行分组?

如何在 Jaspersoft iReport Designer 中对列中的所有值求和?

使用 SQL Server 在 varchar 列中查找非 ASCII 字符

c语言编程中如何显示字符的ASCII码值?

如何根据另一个表中的索引序列对列中的名称进行排序?

c语言怎么求字符的ascii码