Comments (4)
It looks like the given example can be done without a CTE
(
Purchase.objects
.filter(...)
.aggregate(total_thing=Sum("thing"))
)
However, it's hard to tell since I cannot see the query constructed by get_purchases(profile, start_date, end_date)
. Can you provide more detail to show why you need to use a CTE?
from django-cte.
It looks like the given example can be done without a CTE
I was trying to do a contrived example as short as possible to try and get the point across.
So, the reason I use a CTE is to avoid a nasty nested query and provide postgres a better hint as to what indexes to use.
I have some more complex tables I have to join into a CTE then do an aggregate on. Django's aggregate
does not provide a clean way for me to filter on the annotations and then inspect the query for an explain analyze.
I can't really paste the exact code in here as it is a few hundred lines and my employer would not be too happy 😛
from django-cte.
I did find it useful that the join
method exposes _join_type
was very useful for a LOUTER
join.
from django-cte.
I think the problem is that there is no way (with the Django ORM) to add the CTE to the FROM
clause except with a JOIN
. Feel free to re-open this issue if you can come up with a simplified example that has enough moving parts to replicate the issue. Preferably, make the example using the test models.
from django-cte.
Related Issues (20)
- Improve documentation HOT 3
- is there a way to select from a cte without joining it with a model? HOT 5
- Usage in the context of time series HOT 1
- Combining with django-reversion HOT 2
- Can I count all children in Queryset annotate? HOT 7
- annotate() usage in recursion HOT 5
- Unneccessary outer join breaks query HOT 1
- With(empty_qs) throws Error HOT 1
- “no such column”/“column does not exist” errors in Django 4.2 HOT 9
- Not able to do full outer join with django_cte HOT 2
- hnej
- `.update()` does not work when accessing nested tables HOT 1
- Minor : typo in the doc
- How to use as default manager? HOT 1
- Prefetch objects with their nested children
- issue while trying to use with_cte on EmptyResultSet HOT 1
- issue while using cte with union querysets
- Django 4.2 error: each UNION query must have the same number of columns HOT 3
- it's wrong number when i wnat to get total number by using count()
- WITH query name specified more than once HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from django-cte.