如果文本具有对某人的引用,则该文本需要链接到该人实体,如果它具有对链接到该国家实体的国家的引用。
唯一想到的是删除数据库中的所有文本并在事后使用某种解析,例如数据库列包含这样的条目“[PersonEntityID6]来自[CountryEntityID6]”
答案 0 :(得分:0)
您的问题主要是关于存储这些关系的数据库的设计,还是关于查找哪些文本包含哪些名称和国家?无论如何,两者都显得可以解决。
首先,拥有一个像
这样的数据库person(id, name), with an index on name,
country(id, name), with an index on name
text(id, title, full text only if needed)
person_in_text(id, person_id, text_id, position in text if needed)
country_in_text, similar
分析文字:
for each word in the text
select name from person where name like word%
for each person found
if substring of text starting on current position equals name
insert text_id, person_id into person_in_text
... same for country
根据文本的长度以及人数和国家/地区的数量,最好加载每个人并在文本中对人名进行子字符串搜索;同样适用于国家。