我需要查詢Archive表,取得Archive.title和User.name欄位的結果集(按需),請問可以怎麼操作?沒找到答案,請指點一二,謝謝!
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
mongodb不支援join,你的dbref也不是懶加載模式,所以在查archive的時候會一併查出user。 可以自己用查詢語句如hibernate的hsql實作archive.title和archive.user但是無法單獨查詢aechive.user.name這樣的查詢。 mongodb為非關係型資料庫,鼓勵欄位冗餘,查詢冗餘,所以你說的這種情況確實不好實作
@Query(value = "{'id':?0, 'disabled':false}", fields = "{'$id':1, 'success_ret_codes':1}") Stream findSuccessRetCodes(String streamId);
用上面的fields可以只差一個字段,其他字段都是null,但是不能查聯表的數據,因為,Archive表裡面存的是聯表的ID和表名,所以這裡只能查出來,ID ,我測試了一下,直接查聯表的name報錯啦。 so,就這樣咯。
我和你遇到同樣的問題,還沒找到辦法只取得部分DBRef物件裡的部分字段,同求解。 你的問題可以試試這篇文章裡的方法,我的問題比你複雜一點:http://blog.csdn.net/congcong...
mongodb不支援join,你的dbref也不是懶加載模式,所以在查archive的時候會一併查出user。
可以自己用查詢語句如hibernate的hsql實作archive.title和archive.user但是無法單獨查詢aechive.user.name這樣的查詢。
mongodb為非關係型資料庫,鼓勵欄位冗餘,查詢冗餘,所以你說的這種情況確實不好實作
用上面的fields可以只差一個字段,其他字段都是null,
但是不能查聯表的數據,因為,Archive表裡面存的是聯表的ID和表名,所以這裡只能查出來,ID ,我測試了一下,直接查聯表的name報錯啦。 so,就這樣咯。
我和你遇到同樣的問題,還沒找到辦法只取得部分DBRef物件裡的部分字段,同求解。
你的問題可以試試這篇文章裡的方法,我的問題比你複雜一點:
http://blog.csdn.net/congcong...