免责声明:我是语言学家,而不是计算机科学家。我熟悉编程,但我不是专家。该项目是针对濒临灭绝语言的大型词典。我需要对大约 1000 个词位进行分类,这样我就可以直观地看到哪些单词缺失并且可能被添加。
我在 MySQL 中有两个表。
- 词典表
- 类别表
词典表中的每条记录(行)都有一个父 id 值(pid),对应于 categories 表(我已将其重命名为folder)的 id。
我根据邻接模型设计了这个(我需要灵活性来轻松更改树)。
类别
| folder | name | pfolder |
+--------+-------------+---------+
| 1 | Animals | NULL |
| 2 | Wild | 1 |
| 3 | Domestic | 1 |
词典
| id | pid | word | translation |
+--------+-------+-------------+-------------+
| 1 | 3 | Hund | dog |
| 2 | 2 | Rentier | reindeer |
| 3 | | Maus | Mouse |
目标
| main | main_content | sub1 | sub1_content | sub2 | sub2_content |
+---------+---------------+-----------+--------------+-----------+--------------+
| Animals | NULL | Domestic | Hund | NULL | NULL |
| Animals | NULL | Wild | Rentier | NULL | NULL |
| Animals | Maus | NULL | NULL | NULL | NULL |
示例查询
我不知道该怎么做,也不能简单地按照本教程进行操作,因为我有多个表。
这个简单的查询不应该工作吗?
SELECT main.name AS main
FROM categories AS main
LEFT JOIN hd FROM lexicon ON lexicon.pid = categories.main
最终
我想最终得到一个有组织的词素的漂亮列表。在这里,我对文件夹使用粗体,对列表项使用斜体。
- 动物
- 荒野
- 食利者
- 国内的
- 百
- 鼠
- 荒野
该数据将使用 xelatex 打印。为了简单起见,我将上面的示例表保持在最低限度。词典表的实际查询将包括lexeme
、orthographic word
和phonetic word
(在国际音标中)。