Diese Abfrage:SQL- Tabellen mit auf gemeinsamen Spalten
SELECT CID, count(*) as NumOccurences
FROM Violations
WHERE DateOfViolation BETWEEN (dateadd(day, -30, getdate())) AND getdate()
GROUP BY CID
ORDER BY count(*) DESC;
das folgende Ergebnis ergibt:
CID NumOccurences
1921 5
1042 5
1472 5
1543 5
2084 5
2422 5
NumOccurences
korrekt zu sein, überprüft wird. Da CID in anderen Tabellen existiert, Ich möchte CID
zu seiner Kreuzung, eine Spalte in der anderen Tabelle Placement[CID,Intersection,...]
binden, und zeigen Sie das stattdessen an.
Meine gewünschte Ausgabe ist:
Intersection NumOccurences
Elston and Charles 5
Diservey and Pkwy 5
Grand and Chicago 5
...
...
ich das versucht:
SELECT Intersection, count(DateOfViolation) as NumOccurences
FROM Violations
inner join Placement on Violations.CID = Placement.CID
WHERE DateOfViolation BETWEEN (dateadd(day, -30, getdate())) AND getdate()
GROUP BY Intersection
ORDER BY count(*) DESC;
aber erhalten dieses Ergebnis (nicht korrekt):
Intersection NumOccurences
CALIFORNIA AND DIVERSEY 90
BELMONT AND KEDZIE 83
KOSTNER AND NORTH 82
STONEY ISLAND AND 79TH 78
RIDGE AND CLARK 60
ROOSEVELT AND HALSTED 60
ROOSEVELT AND KOSTNER 60
In der Tat, ich habe Ich habe keine Ahnung, was meine Suchanfrage überhaupt zurückbringt oder woher sie kommt.
EDIT Ausführen der Abfrage
SELECT CID, count(*) as num
from Placement
where Intersection = 'BELMONT AND KEDZIE'
group by Intersection, Address, CID
order by Intersection, Address, CID
yeilds
CID num
1372 1
1371 1
1373 1
Ja, es gibt höchstens 2 CIDs, die diesen Kreuzungen entsprechen. CIDs sind Kamera-IDs, und eine Kreuzung kann höchstens 2 (eine für jede Richtung des Verkehrs) haben. Ich denke ich sehe was das Problem ist. Meine Anfrage wird dann viel komplizierter (für mich zumindest). Zählen Sie die Anzahl der Verstöße von BEIDEN CIDs und listen Sie sie unter dem gleichen Kreuzungsnamen auf.Macht es Ihnen etwas aus, mir zu zeigen, dass Sie ein Denkprozess sind, der Sie zur richtigen Lösung führt? ** EDIT ** Autsch, Belmont und Kezie haben 3 CIDs (schlechte Daten) ... Hinzufügen der Verletzungen von ihnen auch dann? – user3487243
Können Sie mir zeigen, was das Ergebnis der Abfrage, die ich gepostet habe, mit der WHERE-Klausel hinzugefügt wurde? Nur die Spalten CID und Num sind in Ordnung. –
Hinzugefügt zu OP, danke. Diese Daten wurden aus der öffentlichen Datenbank meiner Stadt gezogen. Ave und Avenue sollten auch – user3487243