首页 > 解决方案 > 如何使用 SQL 查询 Wikipedia:更好地描述 Wiki 模式?如何查询页面的内容?

问题描述

我的任务是解决以下问题:使用 SQL,查询 Wikipedia 并获取单词“nice”出现的次数。此外,显示文章的名称和每篇文章“nice”这个词出现的次数。

我在使用 SQL 访问 Wikipedia 页面的内容时遇到了问题。我正在使用 Quarry 来处理查询,但我根本找不到页面内容的存储位置。我将此用作参考:https ://www.mediawiki.org/w/index.php?title=Manual:Database_layout/diagram&action=render

我认为页面的内容可能存储在页表中,或者可能存储在内容表中。不过,这些字段及其数据类型对我来说都没有意义(就保存页面的实际文本内容而言)。一篇文章的实际内容存储在哪里?谁能简要描述一下这个数据库实际上是如何代表一个维基百科页面的?

标签: sqlapache-sparkmediawiki

解决方案


页面文本不太简单。在 MediaWiki 中,每个页面(存储在page表格中)可以有多个修订版(存储在revision表格中),每个修订版在text表格中都有其文本。您很可能希望对这些表进行连接以连接信息。


推荐阅读