getLabelCounters: optimize SQL

This commit is contained in:
Andrew Dolgov 2013-02-27 15:05:38 +04:00
parent 1bad74ea7c
commit 45942238bf
1 changed files with 6 additions and 3 deletions

View File

@ -1413,15 +1413,18 @@
$owner_uid = $_SESSION["uid"];
$result = db_query($link, "SELECT id, caption FROM ttrss_labels2
WHERE owner_uid = '$owner_uid'");
$result = db_query($link, "SELECT id,caption,COUNT(unread) AS unread
FROM ttrss_labels2 LEFT JOIN ttrss_user_labels2 ON
(ttrss_labels2.id = label_id)
LEFT JOIN ttrss_user_entries ON (ref_id = article_id AND unread = true)
WHERE ttrss_labels2.owner_uid = $owner_uid GROUP BY ttrss_labels2.id");
while ($line = db_fetch_assoc($result)) {
$id = -$line["id"] - 11;
$label_name = $line["caption"];
$count = getFeedUnread($link, $id);
$count = $line["unread"];
$cv = array("id" => $id,
"counter" => (int) $count);