gpt4 book ai didi

datomic - 如何在数据日志查询中对结果进行排序

转载 作者:行者123 更新时间:2023-12-04 04:16:51 26 4
gpt4 key购买 nike

我正在使用datomic和play框架。发挥是惊人的,而原子弹则是快速的。因此,总体而言是一个很好的组合。因为我是datomic的新手(和datalog,即datomic使用的查询语言),所以我无法对结果进行排序(像我们一样,在sql中排序)。例如。

如果我的查询是:

q= [:find ?title 
:where
[?e :movie/title ?title]
[?e :movie/director "Dave Swag"]
[?e :movie/year ?year]
[(sort ?year)] //here I am trying to sort by year
]

它应返回导演是戴夫·斯瓦格(Dave Swag)的电影的片名,并且结果按发布图像的年份排序。谢谢 :)

最佳答案

如果要对结果集进行排序,则需要在查询之外对返回的结果集执行此操作。 list 20中的Datomic blog post about querying上有一个示例:

(def hist (d/history db))

(->> (d/q '[:find ?tx ?v ?op
:in $ ?e ?attr
:where [?e ?attr ?v ?tx ?op]]
hist
editor-id
:user/firstName)
(sort-by first))

=> ([13194139534319 "Ed" true]
[13194139534335 "Ed" false]
[13194139534335 "Edward" true])

关于datomic - 如何在数据日志查询中对结果进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29621159/

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