我正在尝试使用ArangoDB来获取朋友的朋友列表.不仅仅是一个基本的朋友朋友列表,我还想知道用户和朋友的朋友有多少朋友,并对结果进行排序.在多次尝试(重新)编写性能最佳的AQL查询之后,这就是我最终的结果:
LET friends = (
FOR f IN GRAPH_NEIGHBORS('graph', @user, {"direction": "any", "includeData": true, "edgeExamples": { name: "FRIENDS_WITH"}})
RETURN f._id
)
LET foafs = (FOR friend IN friends
FOR foaf in GRAPH_NEIGHBORS('graph', friend, {"direction": "any", "includeData": true, "edgeExamples": { name: "FRIENDS_WITH"}})
FILTER foaf._id != @user AND foaf._id NOT IN friends
COLLECT foaf_result = foaf WITH COUNT INTO common_friend_count
RETURN {
user: foaf_result,
common_friend_count: common_friend_count
}
)
FOR foaf IN foafs
SORT foaf.common_friend_count DESC
RETURN foaf
Run Code Online (Sandbox Code Playgroud)
不幸的是,性能并不像我想的那么好.与同一查询(和数据)的Neo4j版本相比,AQL似乎相当慢(5-10倍).
我想知道的是......我如何改进查询以使其表现更好?
如何使用INNER JOIN从第二个和第三个表中选择某些列
SELECT
*
FROM
1_packages_plu AS p
INNER JOIN
1_stock as s ON p.fk_products_id = s.fk_products_id
AND branch = 1
INNER JOIN
1_products AS j ON p.fk_products_id = j.id
WHERE
fk_packages_id = 54;
Run Code Online (Sandbox Code Playgroud)
在表中1_stock我只想返回stock-repair列的值,而1_products我需要的只是make,model列
我有一个带有一堆测试/考试问题的SQLite数据库.每个问题属于一个问题类别.
我的表看起来像这样:

目标
我要做的是选择5个随机问题,但结果必须至少包含每个类别中的一个.目标是从每个类别中选择一组随机问题.
例如,输出可以是问题ID 1, 2, 5, 7, 8,2, 3, 6, 7, 8或者8, 6, 3, 1, 7.
ORDER BY category_id,RANDOM()
我可以通过执行下面的SQL从SQLite中获取一个随机的问题列表,但是我如何确保结果包含来自我的每个类别的问题?

基本上,我正在寻找像这样的SQLite版本.
我想只获得5个结果,但每个类别中只有一个(或更多)结果,结果集中包含所有类别.
赏金
添加了赏金,因为我很好奇是否可以在SQLite中完成此任务.我可以在SQLite + Java中做到这一点,但有没有办法在SQLite中做到这一点?:)
我在AWS上使用python django开发ec2 bitnami.我在(2002, "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)")从mysql数据库中获取对象时遇到了.
我已经经历了这么多论坛,但我还没有得到它究竟是什么以及为什么会出现这个问题.请告诉我它是什么以及如何在ec2 bitnami上为python django mysql修复它.
提前致谢.