Opened 17 years ago
Closed 14 years ago
#5293 closed (wontfix)
adding sql functions to order_by clause handling
Reported by: | Owned by: | nobody | |
---|---|---|---|
Component: | Core (Other) | Version: | dev |
Severity: | Keywords: | order_by | |
Cc: | sam@… | Triage Stage: | Design decision needed |
Has patch: | yes | Needs documentation: | no |
Needs tests: | yes | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
The attached patch enables the use of a sql function in a order_by clause.
example:
Publication.objects.order_by("-year(date)")
will produce the following SQL:
... ORDER BY YEAR(date) DESC
use case:
when ordering according to multiple fields to group by year, and then say by publication type, if we use the date to order, the publication type is used only if the whole date is the same.
to group publications by year in the order clause, I could not find a solution.
Publication.objects.order_by("-date.year", "author")
does not work but
Publication.objects.order_by("-year(date)", "author")
does.
I suspect there are other use cases.
caveats:
The provided patch does not changes the way the deprecated syntax for ordering is handled (in orderlist2sql)
Attachments (1)
Change History (4)
by , 17 years ago
Attachment: | sql_function_in_order_by.diff added |
---|
comment:1 by , 17 years ago
Triage Stage: | Unreviewed → Design decision needed |
---|---|
Version: | 0.96 → SVN |
comment:2 by , 17 years ago
Cc: | added |
---|
comment:3 by , 14 years ago
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Wontfixing this, there is zero precedent in the API for allowing arbitrary SQL.
patch