SELECT count(*), flavor
FROM coffees
- WHERE time BETWEEN
+ WHERE (coffees.time BETWEEN
{dtf}
- AND {dtt}
+ AND {dtt})
GROUP BY flavor
"""
elif q == "get_drinkers_of":
if isinstance(b, tuple) or isinstance(b, list):
assert len(b) > 0
- f = f"WHERE flavor = '{b[0]}'"
+ f = f"WHERE (flavor = '{b[0]}'"
for i in b[1:]:
f += f" OR flavor = '{i}'"
+ f += ")"
else:
assert b != ""
f = f"WHERE flavor = '{b}'"
LEFT JOIN identifiers on coffees.id = identifiers.userid
LEFT JOIN users on identifiers.userid = users.id
{f}
- AND coffees.time BETWEEN
+ AND (coffees.time BETWEEN
{dtf}
- AND {dtt}
+ AND {dtt})
GROUP BY identifiers.userid
"""
SELECT count(*), flavor
FROM coffees
- WHERE time BETWEEN
+ WHERE (coffees.time BETWEEN
datetime('now', 'localtime', '-7 days')
- AND datetime('now', 'localtime')
+ AND datetime('now', 'localtime'))
GROUP BY flavor
"""
LEFT JOIN identifiers on coffees.id = identifiers.userid
LEFT JOIN users on identifiers.userid = users.id
WHERE flavor = 'FOO'
- AND coffees.time BETWEEN
+ AND (coffees.time BETWEEN
datetime('now', 'localtime', '-7 days')
- AND datetime('now', 'localtime')
+ AND datetime('now', 'localtime'))
GROUP BY identifiers.userid
"""
LEFT JOIN identifiers on coffees.id = identifiers.userid
LEFT JOIN users on identifiers.userid = users.id
WHERE flavor = 'BAR'
- AND coffees.time BETWEEN
+ AND (coffees.time BETWEEN
datetime('FROM', 'localtime')
- AND datetime('TO', 'localtime')
+ AND datetime('TO', 'localtime'))
GROUP BY identifiers.userid
"""
SELECT count(*), users.name FROM coffees
LEFT JOIN identifiers on coffees.id = identifiers.userid
LEFT JOIN users on identifiers.userid = users.id
- WHERE flavor = 'FOO' OR flavor = 'BAR' OR flavor = 'B'
- AND coffees.time BETWEEN
+ WHERE (flavor = 'FOO' OR flavor = 'BAR' OR flavor = 'B')
+ AND (coffees.time BETWEEN
datetime('FROM', 'localtime')
- AND datetime('TO', 'localtime')
+ AND datetime('TO', 'localtime'))
GROUP BY identifiers.userid
"""