Explorar el Código

try to optimize database queries even more

Eren Yilmaz hace 6 años
padre
commit
ab7c2a9032
Se han modificado 2 ficheros con 5 adiciones y 7 borrados
  1. 4 6
      cool_query.py
  2. 1 1
      model.py

+ 4 - 6
cool_query.py

@@ -4,12 +4,10 @@ from client_controller import _my_tabulate
 model.connect()
 model.cursor.execute('''
         EXPLAIN QUERY PLAN 
-                DELETE FROM sessions
-                WHERE 
-                    (SELECT COUNT(*) as newer
-                     FROM sessions s2
-                     WHERE user_id = s2.user_id
-                     AND rowid < s2.rowid) >= 10
+        SELECT users.rowid
+        FROM sessions, users
+        WHERE sessions.session_id = ?
+        AND users.rowid = sessions.user_id
         '''.replace('?','1'))
 
 print(_my_tabulate(model.cursor.fetchall(),tablefmt='pipe'))

+ 1 - 1
model.py

@@ -201,7 +201,7 @@ def save_key(key):
 def drop_old_sessions():
     connect()
 
-    cursor.execute('''
+    cursor.execute(''' -- no need to optimize this very well
                 DELETE FROM sessions
                 WHERE 
                     (SELECT COUNT(*) as newer