DataLog 是不是等同于 SQL?
Posted
技术标签:
【中文标题】DataLog 是不是等同于 SQL?【英文标题】:Is DataLog equivalent to SQL?DataLog 是否等同于 SQL? 【发布时间】:2018-09-07 18:57:47 【问题描述】:如果Datalog是基于相当于SQL的一阶逻辑,那Datalog怎么能表达传递性(在SQL/一阶逻辑中是无法表达的)?
https://en.wikipedia.org/wiki/Datalog
这显然意味着 Datalog 比 SQL 更具表现力,
http://www.learndatalogtoday.org/
说它具有 SQL 的表达能力。这是否意味着 Datomic 正在做数据记录的一个子集?还是带有固定点的 Datalog 一阶逻辑?我在这里错过了什么?
【问题讨论】:
【参考方案1】:我认为你是对的。 Datalog 是具有固定点的一阶逻辑,而经典 SQL 是纯一阶逻辑。 实际上,这来自允许递归的 Datalog 和没有递归表达式的经典 SQL。
【讨论】:
以上是关于DataLog 是不是等同于 SQL?的主要内容,如果未能解决你的问题,请参考以下文章
dplyr::left_join 是不是等同于 base::merge(..., all.x=TRUE)?
全国排名的问题(linq 的连表查询 等同于sql的left join)