【问题标题】:count characters entered in a form, Postgres database计算表单中输入的字符数,Postgres 数据库
【发布时间】:2012-11-20 05:59:42
【问题描述】:

问题如下:

有一个遗留的 Intranet 应用程序,基本上就是一堆 Web 表单。 为它服务的数据库是 Postgres。 该应用程序已记录在案(很差,但记录在案),因此我或多或少知道哪些行和列涉及哪些内容。

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

文本字段的值分布在多个表格中。

使用场景:

有一堆文本必须通过网络表单输入到该数据库,现在是手写的。 一个人会过来输入。 个人将按角色获得报酬。

所以想法是在一天开始时从数据库中进行“字符计数”,然后在工作日之后进行“字符计数”。从后者中减去前者,然后支付打字员应得的费用。

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

【问题讨论】:

    标签: postgresql text count nlp character


    【解决方案1】:

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

    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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-07
      • 1970-01-01
      • 2012-06-07
      相关资源
      最近更新 更多