SQL COUNT () / LINKE VERBINDUNG?

8

Ich habe drei Tabellen: Anrufe, Anhänge und Notizen und ich möchte alles anzeigen, was in der Anruftabelle ist, aber auch anzeigen, ob ein Anruf Anlagen hat und ob der Anruf Notizen hat. - indem Sie feststellen, ob ein Attachment- oder Notizdatensatz mit einer call_id darin enthalten ist. Es könnte Notizen und Anhänge geben, oder es gibt vielleicht nicht, aber ich müsste es wissen.

Tabellenstruktur:

ruft auf:

%Vor%

Anhänge:

%Vor%

Notizen:

%Vor%

Wenn ich schreibe:

%Vor%

um mir eine Liste aller Anrufe und die Anzahl der Anhänge zu geben.

Wie kann ich auch eine Spalte mit der Anzahl der Notizen hinzufügen oder eine Spalte, die anzeigt, dass es Notizen gibt?

Irgendwelche Ideen?

Danke.

    
thegunner 02.12.2010, 10:49
quelle

6 Antworten

17

Für die Zählung

%Vor%

Oder für die Existenz (wird effizienter, wenn dies alles ist, was Sie brauchen)

%Vor%     
Martin Smith 02.12.2010, 10:52
quelle
1
%Vor%

Wenn call id in fels 4 oder 5 vorhanden ist, wissen Sie, dass Sie einen Anhang oder eine Notiz haben

Wenn Sie die Anzahl der Attachments oder Notizen angeben müssen, sehen Sie sich die anderen Antworten an, schauen Sie sich den Beitrag von AtaTheDev an.

    
VdesmedT 02.12.2010 10:54
quelle
0

Ich denke, es sollte so etwas sein

SELECT c.call_id, title, description, count(distinct attach_id) , count(distinct note_id)
FROM calls c
LEFT JOIN attachments a ON c.call_id = a.call_id
LEFT JOIN notes n ON n.call_id = a.call_id
GROUP BY c.call_id,title,description

    
dabal 02.12.2010 10:56
quelle
0

Verwenden Sie distinct in counts

Sie müssen unterschiedliche Zählungen verwenden, da Ihre Gruppen um zwei verschiedene Entitäten gewachsen sind. Sie müssen also nur die einzelnen Werte zählen. Diese nächste Abfrage gibt sowohl die Anzahl als auch bit -Werte zurück, unabhängig davon, ob Anhänge und Notizen vorhanden sind.

%Vor%     
Robert Koritnik 02.12.2010 10:54
quelle
0

Das funktioniert auch:

%Vor%     
quelle
0

Ich habe diese einfache Abfrage verwendet. Diese Abfrage ermöglicht Ihnen die einfache Verwendung von Haupttabellenspalten ohne Gruppierung nach.

%Vor%     
garish 18.12.2017 03:44
quelle

Tags und Links