简体   繁体   English

如何在 Django 中使用自定义选择创建 QuerySet

[英]How to make a QuerySet with custom select in django

I'm working on a project in python I'm kind of a beginner.我正在用 python 做一个项目,我是个初学者。 I searched a bit on the Queryset but didn't found out how to do a custom select query.我在 Queryset 上搜索了一些,但没有找到如何进行自定义选择查询。 Here's the raw SQL query :这是原始 SQL 查询:

SELECT
  DATE_FORMAT(
    DATE_ADD(date_and_time, INTERVAL - WEEKDAY(date_and_time) DAY), '%Y-%m-%d'
  ) as Week,
  device_type as 'Type of device',
COUNT(*) as Views FROM manage_history
GROUP BY Week, device_type;

How could I get the values but with a QuerySet ?我怎么能得到值但使用 QuerySet ?

Thanks a lot非常感谢

You can perform a raw sql query.您可以执行原始 sql 查询。 More details at https://docs.djangoproject.com/en/3.0/topics/db/sql/更多详情请访问https://docs.djangoproject.com/en/3.0/topics/db/sql/

Django's default manager gives you RawQuerySet : Django 的默认管理器为您提供RawQuerySet

>>> from api.models import Song
>>> Song.objects.raw('SELECT * FROM api_song')
<RawQuerySet: SELECT * FROM api_song>

In case of that you want exactly QuerySet to be returned, Take a look Here .如果您希望准确地返回QuerySet请查看此处

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM