当前位置:  开发笔记 > 编程语言 > 正文

如何使用Django执行SQL LEFT JOIN?

如何解决《如何使用Django执行SQLLEFTJOIN?》经验,为你挑选了1个好方法。

基本上我需要每个条目评论的计数:

SELECT e.*, COUNT(c.id) as comments FROM blog_entry e LEFT JOIN blog_comment c ON e.id = c.entry_id GROUP BY e.id, e.name, e.name_slug, e.date_published, e.category, e.image, e.body, e.is_published, e.views, e.subscription_sent ORDER BY e.date_published DESC LIMIT 15;

但我不知道如何使用Django来解决这个问题.

这是我到目前为止,它完美的工作,除了没有评论计数.有人能指出我正确的方向使用Django进行这样的连接吗?

from project.blog.models import Entry, Comment

def index(request):
    latest_entry_list = Entry.objects.filter(is_published=True).order_by('-date_published')[:15]
    return render_to_response('blog/index.html', {'latest_entry_list': latest_entry_list)

Tiago.. 6

django 1.1支持聚合查询,你可以通过svn trunk获取最后一个版本.该文档已更新

http://docs.djangoproject.com/en/dev/topics/db/aggregation/



1> Tiago..:

django 1.1支持聚合查询,你可以通过svn trunk获取最后一个版本.该文档已更新

http://docs.djangoproject.com/en/dev/topics/db/aggregation/

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有