Changeset 693

Show
Ignore:
Timestamp:
12/13/05 21:25:54 (3 years ago)
Author:
Andrew Dolgov <fox@bah.spb.su>
Message:

[project @ remove ridiculously stupid UNION queries]

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • backend.php

    r691 r693  
    6767 
    6868        function getCategoryCounters($link) { 
    69                 $result = db_query($link, "SELECT COUNT(int_id) AS unread,cat_id  
    70                         FROM ttrss_user_entries,ttrss_feeds WHERE unread = true AND feed_id = id 
    71                                 AND ttrss_feeds.owner_uid = ".$_SESSION["uid"]." GROUP BY cat_id 
    72                         UNION 
    73                         SELECT 0,cat_id FROM ttrss_feeds  
    74                         WHERE ttrss_feeds.owner_uid = ".$_SESSION["uid"]." GROUP BY cat_id"); 
     69                $result = db_query($link, "SELECT cat_id,SUM((SELECT COUNT(int_id)  
     70                                FROM ttrss_user_entries WHERE feed_id = ttrss_feeds.id  
     71                                        AND unread = true)) AS unread FROM ttrss_feeds  
     72                        WHERE owner_uid = ".$_SESSION["uid"]." GROUP BY cat_id"); 
    7573 
    7674                while ($line = db_fetch_assoc($result)) { 
     
    138136                $tctrs_modified = false; 
    139137 
    140               $result = db_query($link, "SELECT tag_name,count(ttrss_entries.id) AS count 
     138/*            $result = db_query($link, "SELECT tag_name,count(ttrss_entries.id) AS count 
    141139                        FROM ttrss_tags,ttrss_entries,ttrss_user_entries WHERE 
    142140                        ttrss_user_entries.ref_id = ttrss_entries.id AND  
     
    145143                UNION 
    146144                        select tag_name,0 as count FROM ttrss_tags 
    147                         WHERE ttrss_tags.owner_uid = ".$_SESSION["uid"]); 
    148  
     145                        WHERE ttrss_tags.owner_uid = ".$_SESSION["uid"]); */ 
     146 
     147                $result = db_query($link, "SELECT tag_name,SUM((SELECT COUNT(int_id)  
     148                        FROM ttrss_user_entries WHERE int_id = post_int_id  
     149                                AND unread = true)) AS count FROM ttrss_tags  
     150                        WHERE owner_uid = 2 GROUP BY tag_name ORDER BY tag_name"); 
     151                         
    149152                $tags = array(); 
    150153 
     
    491494                        // tags 
    492495 
    493                       $result = db_query($link, "SELECT tag_name,count(ttrss_entries.id) AS count 
     496/*                    $result = db_query($link, "SELECT tag_name,count(ttrss_entries.id) AS count 
    494497                                FROM ttrss_tags,ttrss_entries,ttrss_user_entries WHERE 
    495498                                post_int_id = ttrss_user_entries.int_id AND  
     
    498501                        UNION 
    499502                                select tag_name,0 as count FROM ttrss_tags WHERE owner_uid = '$owner_uid' 
    500                         ORDER BY tag_name"); 
    501          
     503                        ORDER BY tag_name"); */ 
     504 
     505                        $result = db_query($link, "SELECT tag_name,SUM((SELECT COUNT(int_id)  
     506                                FROM ttrss_user_entries WHERE int_id = post_int_id  
     507                                        AND unread = true)) AS count FROM ttrss_tags  
     508                                WHERE owner_uid = 2 GROUP BY tag_name ORDER BY tag_name"); 
     509 
    502510                        $tags = array(); 
    503511