SQL Frage:SQL-Summe über Zeilen mit Spaltenübereinstimmung?
Ich habe eine Tabelle mit drei Spalten: From_City, To_City, Trip_Count und 4 Reihen:
+-----------+---------+------------+
| From_City | To_City | Trip_Count |
+-----------+---------+------------+
| Berlin | London | 2 |
| London | Berlin | 3 |
| Sydney | Tokyo | 4 |
| Tokyo | Sydney | 6 |
+-----------+---------+------------+
ich Reisen zwischen den Städten, in eine neue Tabelle summieren möchten, die 2 hat nur Zeilen:
+--------+------------+------------+
| City | Other_City | Trip_Count |
+--------+------------+------------+
| Berlin | London | 5 |
| Sydney | Tokyo | 10 |
+--------+------------+------------+
Ich konnte nicht herausfinden, wie man dies in SQL (vorzugsweise SQL Server) erreicht. Irgendwelche Vorschläge? Vielen Dank!
Hinweis: Bestellung zwischen zwei Städten spielt keine Rolle. entweder Berlin-London oder London-Berlin ist in Ordnung.
Ist das SQL Server-Syntax? Ich kann die Funktionen nicht finden! – FLICKER
Oh, es tut mir leid, du hast Recht. 'LEAST' und' GREATEST' sind in jedem DBMS verfügbar, nicht jedoch in SQL Server. Das wusste ich nicht. (Seltsam. SQL Server gibt es seit etwa zwanzig Jahren. Warum wurden diese Funktionen nie hinzugefügt? Keine große Sache für zwei Werte zu vergleichen, aber mehr als zwei Werte mit 'CASE WHEN 'zu vergleichen, ist stattdessen ein Aufwand.) –
Dies ist immer noch eine gute Lösung. Für SQL Server werde ich einfach tun, was Georgos Betsos vorgeschlagen hat. –