Added note to mysql backend about DATE_FORMAT not working. Refs #1423
git-svn-id: http://code.djangoproject.com/svn/django/trunk@2450 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
85f084de39
commit
ace140662b
|
@ -106,6 +106,9 @@ def get_date_trunc_sql(lookup_type, field_name):
|
||||||
# http://dev.mysql.com/doc/mysql/en/date-and-time-functions.html
|
# http://dev.mysql.com/doc/mysql/en/date-and-time-functions.html
|
||||||
# MySQL doesn't support DATE_TRUNC, so we fake it by subtracting intervals.
|
# MySQL doesn't support DATE_TRUNC, so we fake it by subtracting intervals.
|
||||||
# If you know of a better way to do this, please file a Django ticket.
|
# If you know of a better way to do this, please file a Django ticket.
|
||||||
|
# Note that we can't use DATE_FORMAT directly because that causes the output
|
||||||
|
# to be a string rather than a datetime object, and we need MySQL to return
|
||||||
|
# a date so that it's typecasted properly into a Python datetime object.
|
||||||
subtractions = ["interval (DATE_FORMAT(%s, '%%%%s')) second - interval (DATE_FORMAT(%s, '%%%%i')) minute - interval (DATE_FORMAT(%s, '%%%%H')) hour" % (field_name, field_name, field_name)]
|
subtractions = ["interval (DATE_FORMAT(%s, '%%%%s')) second - interval (DATE_FORMAT(%s, '%%%%i')) minute - interval (DATE_FORMAT(%s, '%%%%H')) hour" % (field_name, field_name, field_name)]
|
||||||
if lookup_type in ('year', 'month'):
|
if lookup_type in ('year', 'month'):
|
||||||
subtractions.append(" - interval (DATE_FORMAT(%s, '%%%%e')-1) day" % field_name)
|
subtractions.append(" - interval (DATE_FORMAT(%s, '%%%%e')-1) day" % field_name)
|
||||||
|
|
Loading…
Reference in New Issue