1
我正在使用ruby驅動程序來重新思考數據庫,我遇到了一些嵌套有數組的元素的問題。使用Ruby驅動程序在Rethinkdb的Reql中創建一個複雜的查詢
我有我的數據結構是這樣
[{"family_name"=>"Adam"},
{"family_name"=>"Bobby"},
{"family_name"=>"Crissy",
"groups"=>
[{"logo_url"=>"https://www.logourl.com/1111.png",
"name"=>"Sample Name 1",
"profile_url"=>"https://www.profileurl.com/groups?gid=1111"},
{"logo_url"=>"https://www.logourl.com/2222.png",
"name"=>"Sample Name 2",
"profile_url"=>"https://www.profileurl.com/groups?gid=2222"},
{"logo_url"=>"https://www.logourl.com/3333.png",
"name"=>"Sample Name 3",
"profile_url"=>"https://www.profileurl.com/groups?gid=3333"},
]},
{"family_name"=>"Bobby"},
{"family_name"=>"Hillton",
"groups"=>
[{"logo_url"=>"https://www.logourl.com/4444.png",
"name"=>"Sample Name 1",
"profile_url"=>"https://www.profileurl.com/groups?gid=4444"},
{"logo_url"=>"https://www.logourl.com/5555.png",
"name"=>"Sample Name 2",
"profile_url"=>"https://www.profileurl.com/groups?gid=55555"},
{"logo_url"=>"https://www.logourl.com/6666.png",
"name"=>"Sample Name 3",
"profile_url"=>"https://www.profileurl.com/groups?gid=12345"},
]}]
期望的結果是返回擁有「PROFILE_URL」鏈接,與「12345」結尾的行。使用Ruby和JavaScript的組合,我已經嘗試這樣的:
'r.table("profiles").filter{ |row| row['groups'].contains(r.js('function(group) { return group('profile_url').match("12345$") }'))}.run(conn)'
但是,它仍然沒有返回結果,是否有與Ruby驅動程序使用一個明確的辦法???
期望的結果將是
[{"family_name"=>"Hillton",
"groups"=>
[{"logo_url"=>"https://www.logourl.com/4444.png",
"name"=>"Sample Name 1",
"profile_url"=>"https://www.profileurl.com/groups?gid=4444"},
{"logo_url"=>"https://www.logourl.com/5555.png",
"name"=>"Sample Name 2",
"profile_url"=>"https://www.profileurl.com/groups?gid=55555"},
{"logo_url"=>"https://www.logourl.com/6666.png",
"name"=>"Sample Name 3",
"profile_url"=>"https://www.profileurl.com/groups?gid=12345"},
]}]
請在此先感謝幫助和! :d
謝謝你,就像一個魅力〜 – noobiehacker