日期\格式mysql django

日期\格式mysql django,mysql,django,django-models,Mysql,Django,Django Models,我目前正在尝试将一些MySQL逻辑迁移到Django(并在此过程中学习)。到目前为止,我确实理解如何进行“普通”查询,但我在尝试将此查询转换为Django“queryset”sintax时遇到了困难: 这个查询按照我的需要工作,尽管我不得不承认它可能有缺陷,因为我绝不是一个SQL专家(更像是一个新手) 提前感谢您的帮助那么您是在这里询问Django代码吗?注意,许多MySQL框架并不支持所有查询。有时您可能需要编写一个本地查询。您好,是的,完全正确,基本上如果有办法将其转换为Django Sin

我目前正在尝试将一些MySQL逻辑迁移到Django(并在此过程中学习)。到目前为止,我确实理解如何进行“普通”查询,但我在尝试将此查询转换为Django“queryset”sintax时遇到了困难:

这个查询按照我的需要工作,尽管我不得不承认它可能有缺陷,因为我绝不是一个SQL专家(更像是一个新手)


提前感谢您的帮助

那么您是在这里询问Django代码吗?注意,许多MySQL框架并不支持所有查询。有时您可能需要编写一个本地查询。您好,是的,完全正确,基本上如果有办法将其转换为Django Sintax,因为您想使用Django,我建议您查看Postgres。由于您正在学习,您还可以下载一个桌面应用程序来查看表和行。你会有更好的理解,我不能告诉你哪一个对MySQL好,但对于Postgres的使用我不知道,但我已经对你的问题投了赞成票。如果您在框架内找不到执行此操作的方法,那么应该有一个本机查询选项。谢谢您的回复。我会考虑你的建议@Hanseffranz。是的,我一直在阅读有关原始查询的内容,除非我能将其翻译成Django,否则我必须使用它。实际上,我试图找出是否有这样的直接Django语法来了解更多信息。
SELECT hour, AVG(sessions) 
FROM (
    SELECT DATE_FORMAT(acctstarttime, '%d-%m-%Y') AS date, 
    DATE_FORMAT(acctstarttime, '%H:00') as hour, COUNT(DISTINCT username) AS sessions
    FROM radacct
    WHERE calledstationid = 'CLIENT' AND acctstarttime < 'DATE'
    GROUP BY date, hour) tb1
GROUP BY hour
Hour  ---  AVG
00:00 ---  50
01:00 ---  100 
02:00 ---  350
.
.
.
23:00 ---  120