统计在Postgres数据库表单中输入的字符数



问题如下:

有一个遗留的内联网应用程序,基本上就是一堆网络表单。为其提供服务的数据库是Postgres。该应用程序有文档记录(虽然很差,但有文档记录),所以我或多或少知道哪些行和列涉及什么。

我想要的是,能够计算在web表单的文本字段中输入的所有人类可读字符(包括空格键)(基本上,做Openoffice Writer的/MS Word的统计功能,但只使用字符计数。不需要计算单词)

文本字段的值散布在几个表中。

使用场景:

有一堆文本必须通过网络表单输入数据库,现在是手写的。一个人会来把它打进去。人员将按角色付费。

所以这个想法是在一天开始的时候从数据库中进行"字符计数",然后在工作日之后进行"字符数"。从后者中减去前者,付给打字员应得的报酬。

在给定的时间内,不会有超过一名打字员工作,因此不需要确定谁负责给定的新字符。

基本上,您需要这样的查询:

select sum(count) from (
(select sum(length(C1)) as count from T1)
union all
(select sum(length(C2)) as count from T2)
union all
...
(select sum(length(CN)) as count from T3)
) as x

其中C1。。。,CN和T1。。。,TN分别是列名和表名。

如果表X有多个文本列,则可以将多个(select sum(length(CX)) from TX)查询合并为一个:

select sum(length(C1)) + sum(length(C2)) + ... + sum(length(CN)) as count from TN

最新更新