Zum Inhalt springen

Tabellen aus MySQL DB auswählen


moonsister

Empfohlene Beiträge

Hi,

kann mir jemand sagen, wie ich mehrere Tabellen aus einer DB auswählen kann?

Es geht um eine Adressüberprüfung. Für jeden Vorwahlbereich gibt es eine Tabelle (name z.b kiel_431, kiel_432 usw.) mit den dort befindlichen Strassennamen. Der User gibt seine Strasse, plz, ort, vorwahl ein, und wenn nicht die genaue Strasse ermittelt werden kann, dann soll er die ersten 3 Buchstaben der Strasse nehmen, und in allen Tabellen suchen, die den Ortsnamen enthalten.

z.B. Select * from Database where table_name like 'kiel' AND strasse like 'Alt%';

Ich denke. dass das so ähnlich aussehen müsste, aber bekomme immer einen Syntaxfehler. :| Oder muss man das irgendwie schachteln?

Vielen Danke für Hilfe,

Mara

Link zu diesem Kommentar
Auf anderen Seiten teilen

So waers richtiger

Schau dir nochmal allgemein Select Statements an, und wie diese aufgebaut werden sollten.

ja, so hab ich das Statement ja, wenn ich die normale Abfrage mach ;)

Ich meinte nur irgenwo gesehen zu haben, dass man die Tabellen abfragen kann, und als Filter die Eigenschaften der Tabellennamen (z.B. table_name) benutzen kann. Aber ich konnte es nicht mehr finden, auch im MySQL Handbuch nicht.

Einzeln abfragen....na dann bleibt mir wohl nix andres übrig, als das so zu machen :/

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich glaube ich verstehe was gemeint ist: du hast für jeden telefonvorwahlbereich eines ortes eine eigene tabelle. wenn du MySQL ab version 5 verwendest, könnst du ein subquery machen und ort sowie vorwahl zusammenkonkatenieren:

Select * from Database where table_name = (select CONCAT(ort, '_', vorwahl) from vorwahlen ....) AND strasse like 'Alt%';

allerdings ist obiges ungetestet und ich frage mich, ob es sinn macht, vorwahlbereiche eines ortes in separate tabellen auszulagern.

s'Amstel

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich glaube ich verstehe was gemeint ist: du hast für jeden telefonvorwahlbereich eines ortes eine eigene tabelle. wenn du MySQL ab version 5 verwendest, könnst du ein subquery machen und ort sowie vorwahl zusammenkonkatenieren:

allerdings ist obiges ungetestet und ich frage mich, ob es sinn macht, vorwahlbereiche eines ortes in separate tabellen auszulagern.

s'Amstel

Ja, genau richtig verstanden! Version muss ich mal nachschauenn.

Die Tabellenstruktur kann ich im Nachhinein nicht mehr ändern, die ist schon so hier vorhanden. Es geht um Telefeonanschlussverfügbarkeit, daher macht es denk ich schon Sinn, das nach den Vorwahlbereichen aufzuteilen. Ansonsten hätte man ja eine ewig lange Tabelle mit allen Strassennamen.

Aber meine Erfahrung mit derart großen Datenmengen ist auch bregrenzt. ;)

Jedenfalls danke für die Tips!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...