-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Gleichnamige Stationen in gleicher Gemeinden mit abweichender DHID #10
Comments
Hallo Holger, |
Diese angehägte Datei listet die betroffenen Stationen. Stationen, zu denen mehrere Doppelungen existieren, werden ggf. in allen Kombinationen, also mit mehreren Zeilen, aufgeführt. |
In der Datei wird wg. der GROUP BY a.authority Einschränkung nur ein Datensatz je Organisation ausgegeben, kannst du eine Datei mit allen Dubletten erstellen? |
Oops. Nun mit diesem Statement erstellte Datei listet dafür alle betroffenen 904 Stationen (inklusive Doppelungen) untereinander und einmalig. Lässt sich m.E. auch leichter lesen: .output out/issue_10.csv
SELECT a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude
FROM zhv a,
zhv b
WHERE a.municipality=b.municipality
AND a.type='S'
AND b.type='S'
AND a.name=b.name
AND a.dhid != b.dhid
AND a.condition='Served'
AND b.condition='Served'
GROUP BY a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude
ORDER BY a.authority, a.municipalitycode, a.name, a.dhid; |
für die NVBW eine kurze Zwischeninfo: es gibt sowohl echte Dubletten, aber vielfach auch die Verwendung einer falschen Namensversion, die ohne Zusatz scheinbare Dubletten sind, aber in anderen Namensversionen den Orteil beinhalten. Hier scheint ein Fehler beim bereitstellen von NVBW nach DELFI die Ursache zu sein. Wir klären das hausintern |
Im Datensatz Stand 05.12.2022 existieren weiterhin Haltestellen gleichen Namens in der gleichen Gemeinde, welche laut zHV bedient werden, jedoch unterschiedliche DHIDs aufweisen:
|
Im Datensatz vom 12.12.2022 sind noch die folgenden Duplikate enthalten:
Doppelte Haltestellen sind mit all ihren Doppelungen gezählt. Diese wurden mit dem folgenden Statement ermittelt, dass tatsächlich andernorts existierende Namensduplikate ausschließt. Kriterium hierfür ist, dass sowohl Kreis als auch Lage sich für solche Duplikate deutlich unterscheiden müssen: SELECT authority, COUNT(*) count FROM (
SELECT a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude
FROM zhv a,
zhv b
WHERE a.municipality=b.municipality
AND a.type='S'
AND b.type='S'
AND a.name=b.name
AND a.dhid != b.dhid
AND a.condition='Served'
AND b.condition='Served'
AND ((a.latitude BETWEEN b.latitude - 0.1 AND b.latitude + 0.1
AND a.longitude BETWEEN b.longitude - 0.1 AND b.longitude + 0.1)
OR SUBSTR(a.dhid,0, 8) = SUBSTR(b.dhid,0, 8))
GROUP BY a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude) as duplicates
GROUP BY authority
ORDER BY count DESC; |
Zu den Beispielen der Hochbahn:
|
@2martens Das o.g. Statement prüft auf Namens-Identität. Aktuell existiert für die Hamburger Hochbahn noch folgende Namensdoppelung:
Beide sind laut |
Ist an den die Kollegen der Hamburger Hochbahn weitergeleitet. |
Mit zhv-Stand vom 30.12.2024 gilt für Haltestellen mit `LastOperationDate' >= '2025-01-01': SELECT authority, COUNT(*) count FROM (
SELECT a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude
FROM zhv a,
zhv b
WHERE a.municipality=b.municipality
AND a.type='S'
AND b.type='S'
AND a.name=b.name
AND a.dhid != b.dhid
AND a.lastOperationDate >= '2025-01-01'
AND b.lastOperationDate >= '2025-01-01'
AND ((a.latitude BETWEEN b.latitude - 0.1 AND b.latitude + 0.1
AND a.longitude BETWEEN b.longitude - 0.1 AND b.longitude + 0.1)
OR SUBSTR(a.dhid,0, 8) = SUBSTR(b.dhid,0, 8))
GROUP BY a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude) as duplicates
GROUP BY authority
ORDER BY count DESC;
Konkrete Beispiele sind: WITH examples AS (
SELECT a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude, ROW_NUMBER() OVER ( PARTITION BY a.authority) AS nr
FROM zhv a,
zhv b
WHERE a.municipality=b.municipality
AND a.type='S'
AND b.type='S'
AND a.name=b.name
AND a.dhid != b.dhid
AND a.lastOperationDate >= '2025-01-01'
AND b.lastOperationDate >= '2025-01-01'
AND ((a.latitude BETWEEN b.latitude - 0.1 AND b.latitude + 0.1
AND a.longitude BETWEEN b.longitude - 0.1 AND b.longitude + 0.1)
OR SUBSTR(a.dhid,0, 8) = SUBSTR(b.dhid,0, 8))
GROUP BY a.authority, a.municipalitycode, a.municipality, a.name, a.dhid, a.latitude, a.longitude)
SELECT * FROM examples WHERE nr <= 4;
Wir vertreten hierbei die Auffassung, dass eventuelle Tippfehler oder Neuzuweisungen vormals eigenständiger Haltestellen eine Anpassung/Korrektur der DHID rechtfertigen. |
Derzeit listet das zHV 558 gleichnamige, in Betrieb befindliche (
condition=Served
) Stationen (type=S
) in der gleichen Gemeinde, jedoch mit abweichenden DHID auf. Teilweise haben diese die gleichen, teilweise auch unterschiedliche Koordinaten.Diese Stationen sollten eine einheitliche DHID aufweisen, auch wenn sie womöglich von unterschiedlichen Verkehrsunternehmen bedient werden, was eventuell die Ursache für die abweichend vergebenen DHIDs ist(?).
The text was updated successfully, but these errors were encountered: