gpt4 book ai didi

sql - 将SPARQL查询转换为SQL查询

转载 作者:行者123 更新时间:2023-12-03 19:30:04 25 4
gpt4 key购买 nike

我正在学习数据库管理。一个任务是能够手动转换SPARQL查询。我对查询中的FROM子句以及如何识别它们感到困惑。

SELECT下面的查询中很简单,但是由什么决定FROMWHERE子句。

数据库格式:Triples(s text, p text, o text)

PREFIX dbr: <http://dbpedia.org/resource/> PREFIX dbo: <http://dbpedia.org/ontology/> 
SELECT ?place
WHERE {

dbr:Lionel_Messi dbo:birthPlace ?place
}


我的理解:

SELECT dbo:birthPlace
FROM dbr:Lionel_Messi


谢谢

最佳答案

这取决于数据库架构决定存储三元组(s p o)。最常见和最容易的是


包含spo列的单个表。
属性表,即每个属性p的一个表,其列为so


对于选项1,查询可能类似于



SELECT T.o
FROM triples T
WHERE T.s = "dbr:Lionel_Messi" AND T.p = "dbo:birthPlace"


对于选项2,可能类似于

SELECT T.o
FROM dbo:birthPlace T
WHERE T.s = "dbr:Lionel_Messi"


请注意,我在这里显示了一个简化的版本,即在创建表和加载数据(例如存储完整URI)时必须完成表的命名约定和前缀解析

关于sql - 将SPARQL查询转换为SQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42708339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com