IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    django sql语句查询(不需要插件)

    a@b.com (laowang)发表于 2015-01-11 11:28:29
    love 0

    我们通常用django model 来进行一些数据查询的时候,对内部执行的sql语句流程是不了解的,这对我们做一些sql方面的优化造成了一些困扰。

    其实django model对象内部就有一个能够查询当前执行的sql语句。

    比如:

    你需要调用文章类别:

    antype = Articletype.objects.values('id').filter(parent__isnull=True).exclude(id=6)

    上面是输出类别的id,条件是parent_id is Null 并且id

    6

    下面我们看下怎么用django 在控制台输出sql语句:

    我们直接调用:

    print antype.query

    每个model对象都有一个query属性,输出当前执行的sql语句。

    这样就行,输出结果:

    SELECT `article_articletype`.`id` FROM `article_articletype` LEFT OUTER JOIN `article_articletype` T2 ON (`article_articletype`.`parent_id` = T2.`id`) WHERE (T2.`id` IS NULL AND NOT (`article_articletype`.`id` = 6 )) ORDER BY `article_articletype`.`rank` ASC, `article_articletype`.`id` DESC

    上面的order字段信息我是在定义model的时候在class meta上就定义好了。

    Copyright © 2008

    继续阅读《django sql语句查询(不需要插件)》的全文内容...

    分类: django教程 | Tags: | 添加评论(0)

    还没有相关文章,您来说两句?



沪ICP备19023445号-2号
友情链接