SQL Problem PLZ

Diskutiere SQL Problem PLZ im Webmaster Hilfe / Programmierer Forum Forum im Bereich Computerprobleme; Hallo zusammen, folgendes Problem stellt sich mir: Ich möchte alle Orte in unserer Datenbank rausfiltern, deren PLZ sich um 10000 unterscheiden....

  1. #1 Kyo1987, 13.02.2013
    Kyo1987

    Kyo1987 Erfahrener Benutzer

    Dabei seit:
    23.04.2008
    Beiträge:
    144
    Zustimmungen:
    0
    Hallo zusammen,

    folgendes Problem stellt sich mir:

    Ich möchte alle Orte in unserer Datenbank rausfiltern, deren PLZ sich um 10000 unterscheiden.

    Sprich ich habe ein Ort

    München in dem ist die PLZ
    80992 und 90000 hinterlegt.

    Da dieser PLZ Unterschied nicht stimmen kann würde ich mir diesen gerne anzeigen lassen.

    Ich habe bereits mit dem SQL Befehl angefangen:

    Code:
    SELECT a.name,
           d.zipcode as PLZ,
           f.name,
           count(a.id)                   
    From   ZIPCODE d,
           city a,
           country f
    WHERE  d.state = 'VALID' and
           d.zipcode between '80000' and '97999' and
           d.zipcode is not null and
           f.name = 'Deutschland' and
           length(d.zipcode) = 5 and
           --a.name = 'München' and
    a.name IN               
              ( SELECT DISTINCT b.name
                        from  city b,
                              zipcode c
                        where f_tonumber(d.zipcode) < f_tonumber(c.zipcode)+10000                                                                                       
                )and a.id = d.fk_city and 
                f.id = a.fk_country
    Group by a.name, d.zipcode, f.name
    Having count(a.id) > 1;        
    
    Ich komme an diesem Punkt irgend wie nicht weiter -.-

    Freue mich schon auf eure Antworten.

    Vielen Dank vorab.

    Gruß Kyo
     
  2. Anzeige

    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. #2 Kyo1987, 13.02.2013
    Kyo1987

    Kyo1987 Erfahrener Benutzer

    Dabei seit:
    23.04.2008
    Beiträge:
    144
    Zustimmungen:
    0
    Das Hauptproblem was sich mir stellt liegt in diesem Code Abschnitt:

    Code:
    where f_tonumber(d.zipcode) < f_tonumber(c.zipcode)+10000
    
    Denn es funktioniert leider nicht das er mir den Unterschied zwischen den PLZ bei 10k anzeigt.... . Leider weiß ich nicht wie ich es anders abfragen kann... .
     
  4. #3 Nornore, 14.02.2013
    Nornore

    Nornore Neuer Benutzer

    Dabei seit:
    03.12.2012
    Beiträge:
    2
    Zustimmungen:
    0
    Eigentlich willst Du ja nur die ersten Stellen der PLZ vergleichen. Deswegen könnte es zielführend sein, diese mittels LEFT oder substring rauszufiltern und anschließend auf Ungleichheit zu prüfen.
     
  5. #4 xandros, 14.02.2013
    xandros

    xandros IT Consultant, Cisco Registered Partner
    Moderator

    Dabei seit:
    05.07.2007
    Beiträge:
    26.162
    Zustimmungen:
    116
    Ort:
    Umkreis Duisburg, neben Mannheim, hinter Hamburg
    a.name, b.name, f.name -> ungluecklich gewaehlte Feldbezeichnungen! Je nach Verwendung des SQL-Strings kann "name" als Befehl verstanden werden und nicht als Feldbezeichnung. Da name haeufig als Schluesselwort verwendet wird, sollte man diesen Begriff als Feldbezeichnung vermeiden und besser einen aussagekraeftigen Feldnamen verwenden.

    Ohne die Tabellenstrukturen und die Beziehungen zu kennen wird das etwas schwierig nachzuvollziehen sein. Aus dem obigen SQL-String kann ich zumindest nicht ableiten, welche Tabellen mit welchen Informationen gefuellt sind und wie sie miteinander in Beziehung stehen..... und schon gar nicht, warum hier ein SELECT mit SUBSELECT ueber insgesamt 5 Tabellen aufgebaut wird.
     
  6. Anzeige

    Es ist generell erstmal empfehlenswert alle ggf. veralteten oder fehlerhaften Treiber zu scannen und auf neue zu aktualisieren. Hier kannst du einen Treiber-Scanner downloaden. Das erspart oftmals viel Ärger und hilft gegen diverse Probleme.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
Thema:

SQL Problem PLZ

Die Seite wird geladen...

SQL Problem PLZ - Ähnliche Themen

  1. Exchange 2013 Problem

    Exchange 2013 Problem: hallo, Ich habe ein Problem beim anlegen von Besprechungsräumen. ich bekomme unter "Besprechung anlegen" keine Räume angezeigt. Im Adressbuch sind...
  2. Problem beim abspielen von Blu-Ray's

    Problem beim abspielen von Blu-Ray's: Moin, ich habe ein Problem beim abspielen von Blu-Ray's. Mir ist bekannt, dass das Abspielen eine Zusatzsoftware benötigt, dafür habe ich mir den...
  3. PC startet nicht mehr richtig - CsrBtOBEX-Dienst Problem

    PC startet nicht mehr richtig - CsrBtOBEX-Dienst Problem: hallo, seit einigen tagen habe ich das problem dass mein PC etwa nach jedem 3. mal runterfahren ewig runter fährt (1-2 Min, normal 10-20 sek.) ....
  4. Sharkoon Fire Glider Optical Problem

    Sharkoon Fire Glider Optical Problem: Hallo leute seit ich Windows 10 Habe läuft die Maus irgendwie etwas hackelig und nicht mehr so schön flüsssig wie unter windows 7 über denn...
  5. Windows 10 immer auf Höchstleistung problem

    Windows 10 immer auf Höchstleistung problem: Hallo, Ich habe Windows 10 und bei mir ist in der Energieoption Ausbalanciert eingestellt ( Desktop PC ) Wenn ich nun ein Game Beendet habe z.b:...