Mehrere Counts in einer Abfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mehrere Counts in einer Abfrage

    Hi!

    Möchte mir die Anzahl ungelesener und gesamter Nachrichten anzeigen lassen. Ich versuche das mit UNION.
    Bekomme das Richtige Ergebnis aber in einer Spalte, obwohl ich temporäre Spalten angegeben habe.
    PHP-Code:
        $msg =& $db->query("
            (SELECT 
                    COUNT(id) AS new_msg
                    FROM messages
                    WHERE recipient_id = "
    .$_SESSION['user_id']."
                    AND unread = 1
                    AND (user_del IS NULL OR user_del != "
    .$_SESSION['user_id']."))
            UNION ALL
            (SELECT 
                    COUNT(id) AS all_msg
                    FROM messages
                    WHERE recipient_id = "
    .$_SESSION['user_id']."
                    AND unread = 0
                    AND (user_del IS NULL OR user_del != "
    .$_SESSION['user_id']."))        
                    
        "
    ); 

  • #2
    Re: Mehrere Counts in einer Abfrage

    Entweder

    SELECT COUNT(id) AS new_msg, NULL AS all_msg FROM ... WHERE ...
    UNION
    SELECT NULL AS new_msg, COUNT(id) AS all_msg FROM ... WHERE ...

    oder per Aggregation (GROUP BY).

    Kommentar

    Lädt...
    X