请问ngql中in的用法和mysql中in的用法是一致的吗?都是接在where后面进行集合范围过滤吗?有没有什么需要注意的?
目前不支持在lookup语句中使用。
go FROM hash(“UR12345”) OVER follow BIDIRECT where $$.user.user_no in (“UR23456”) YIELD follow.intimacy,follow.status,follow.status_change_time,$$.user.active_time as active_time,$$.user.user_no as user_no,$$.user.user_name as user_name,$$.user.head_img_url as head_img_url
in 后面是个list,换成[]试试呢
起点和终点已知,可以试试fetch prop on
但是我还需要查询边的属性,fetch prop on貌似不能同时查询定点和边的属性
是点和边的属性一起返回吧,稍等我看看哈
$var = GO FROM 100 OVER follow YIELD follow._src AS s, follow._dst AS d;
FETCH PROP ON follow $var.s -> $var.d YIELD follow.degree;
你说的是这个示例吗?但我这个终点不是固定的,有可能是一个,也有可能是多个,所以需要用in查询
也就是说起点是固定的,终点不固定,终点是通过用户编号这一属性来筛选的是吗
对的!
lookup on users where user.user_no == hash(XX) yield user.user_no as no |
go from no over follow bidirect yield …
这样可以吗
你这里没有筛选终点啊,我是需要筛选一个或多个终点用户的
用lookup筛选了啊
因为你用了bidirect,所以就无所谓,终点和起点了,他都会查出来了,从这个点出去的边和指向这个点的边
但这不是我要的效果了,好像ngql没有in关键字
2.x才支持list/set/map和in语法, 你用的1.x, 不支持的
2.x中:
list写法: [a, b, c]
set写法: {a, b, c}
map写法: {name:“jie”, age:18}