PATCH: Retrieving last 50 chats now
This commit is contained in:
@@ -76,20 +76,24 @@ def get_past_chat(stream_id: int):
|
|||||||
|
|
||||||
# fetched in format: [(username, message, time_sent, is_subscribed)]
|
# fetched in format: [(username, message, time_sent, is_subscribed)]
|
||||||
all_chats = db.fetchall("""
|
all_chats = db.fetchall("""
|
||||||
SELECT
|
SELECT username, message, time_sent, is_subscribed
|
||||||
u.username,
|
FROM (
|
||||||
c.message,
|
SELECT
|
||||||
c.time_sent,
|
u.username,
|
||||||
CASE
|
c.message,
|
||||||
WHEN s.user_id IS NOT NULL AND s.expires > CURRENT_TIMESTAMP THEN 1
|
c.time_sent,
|
||||||
ELSE 0
|
CASE
|
||||||
END AS is_subscribed
|
WHEN s.user_id IS NOT NULL AND s.expires > CURRENT_TIMESTAMP THEN 1
|
||||||
FROM chat c
|
ELSE 0
|
||||||
JOIN users u ON c.chatter_id = u.user_id
|
END AS is_subscribed
|
||||||
LEFT JOIN subscribes s ON c.chatter_id = s.user_id AND s.subscribed_id = ?
|
FROM chat c
|
||||||
WHERE c.stream_id = ?
|
JOIN users u ON c.chatter_id = u.user_id
|
||||||
ORDER BY c.time_sent DESC
|
LEFT JOIN subscribes s ON c.chatter_id = s.user_id AND s.subscribed_id = ?
|
||||||
LIMIT 50;
|
WHERE c.stream_id = ?
|
||||||
|
ORDER BY c.time_sent DESC
|
||||||
|
LIMIT 50
|
||||||
|
) subquery
|
||||||
|
ORDER BY time_sent ASC;
|
||||||
""", (stream_id, stream_id))
|
""", (stream_id, stream_id))
|
||||||
|
|
||||||
db.close_connection()
|
db.close_connection()
|
||||||
|
|||||||
Reference in New Issue
Block a user