Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在mysql中计算视图中的单词数_Mysql_View - Fatal编程技术网

在mysql中计算视图中的单词数

在mysql中计算视图中的单词数,mysql,view,Mysql,View,我有下面的表结构 +-----------------+-------------+ | myID | text | +-----------------+-------------+ | 3 | some text | | 3 | other text | | 5 | text | +-----------------+-------------+ my

我有下面的表结构

+-----------------+-------------+
| myID            | text        |
+-----------------+-------------+
| 3               | some text   |
| 3               | other text  |
| 5               | text        |
+-----------------+-------------+
myID不是唯一的ID。它可以重复。文本是任意字符串。 我希望创建一个视图,返回myID行文本中的字数

+-----------------+-------------+
| myID            | count       |
+-----------------+-------------+
| 3               | 4           |
| 5               | 1           |
+-----------------+-------------+
好吧,我开始(我是mySQL的新手)并做了以下工作

SELECT 
myid,
pagetext
FROM table
GROUP by myid
这只是分组。我认为接下来的步骤是

  • 如何使pagetext返回适当myID行的连接(我希望将连接限制为仅25行)
  • 如何计算返回值中的字数

  • 您知道如何开始吗?

    您可以通过以下查询找到一列中的字数(如果您可以假设字数之间有1个空格):

    SELECT
      myId,
      SUM(LENGTH(text)-LENGTH(REPLACE(text, ' ', ''))+1)
    FROM table
    GROUP BY myId
    

    来源:

    首先尝试定义“单词的组成成分?”这几乎不像听起来那么简单,除非数据存储时总是用一个空格分隔单词,而没有标点符号。此外,每个ID的总单词数或唯一单词数是多少?只是用空格分隔的字符。它计算了所有的单词,不知道你为什么感到困惑。这个例子实际上说明了这一点,我假设这个例子没有包括所有可能的输入组合。这些单词没有单独存储在另一个表中的任何原因。这会让你的生活更轻松。我无法控制数据库的结构……除了你从源代码中漏掉了一个“name”实例;它应该是:
    SUM(LENGTH(text)-LENGTH(REPLACE(text),“,”)+1)
    限制呢?这是非常需要的。我怎么才能加上呢?我不知道你的意思,25行。我可以建议你再问一个问题吗?是的,只有25行对应的“myId”ID。