mongodb 实现关系型数据库中查询某一列 的效果
Posted slgkaifa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb 实现关系型数据库中查询某一列 的效果相关的知识,希望对你有一定的参考价值。
近期在tornado\mongodb\ansible
mongodb中有个find()方法非常牛逼,能够将集合中全部的表都传出来,一開始我这么写
class Module_actionHandler(tornado.web.RequestHandler): def get(self, *args, **kwargs): coll = self.application.db.waitfish hosts = coll.find({}, {'hostname':1,"_id":0}) modulenames = ['ping', 'setup', 'copy'] self.render( "module_action.html", hosts = hosts, modulenames = modulenames, )
然后在模板中:
<select name="hostname"> {% for host in hosts %} <option name="{{ host['hostname'] }}" >{{ host['hostname'] }}</option> {% end %} </select>
后来想了想find()方法是找出全部的表,这太伤不起了..
于是又去看了度娘,基本上都是列出一大堆查询命令,好多中方法的.
最后我还是选了这一种:
class Module_actionHandler(tornado.web.RequestHandler): def get(self, *args, **kwargs): coll = self.application.db.waitfish hosts = coll.find({}, {'hostname':1,"_id":0})#解释一下,这里hostname:1 表示返回hostname列,因为_id列每次都返回所以用0禁用掉,模板还一样 modulenames = ['ping', 'setup', 'copy'] self.render( "module_action.html", hosts = hosts, modulenames = modulenames, )
以上是关于mongodb 实现关系型数据库中查询某一列 的效果的主要内容,如果未能解决你的问题,请参考以下文章