Zwei Tabellen einer SQL Datenbank

Brody

Mitglied
Guten Tag online,
also nach einigem Lesen hier und ausprobieren, hab ich mich entschlossen, dann doch mal zu posten; so einfach eine ähliche php schnappen und sie abändern ist es dann doch nicht, hihihi.
Ich habe eine SQL Datenbank "ipdata", unterteilt in derzeit zwei Tabellen "2003" und "2004".
Diese listen "Player", "IP","Alias","FixIP","AdminsIP" auf, und zwar in beiden Tabellen in der gleichen Struktur.
Ich würde gerne eine Abfragemaske haben, in der der Anwender für jede dieser Spalten Eingaben machen kann, und die Suche in dann in beiden Tabellen abläuft. Derzeit behelfe ich mir damit, dass der Anwender in jeder Tabelle suchen kann, allerdings leider nicht Tabellenübergreifend.
Ist das denn machbar überhaupt?
 
Hi

warum hast Du 2 Tabellen mit der gleichen Struktur?
Was ist später mit 2005 oder 2006 etc. , legst Du dann immer neue Tabellen pro Jahr an?

Du kannst alles in eine Tabelle packen, fügst ein Spalte Datum dazu. Du kannst die jeweiligen Abfragen für das jeweilige Jahr ganz schnell in der Where-Bedingung der SQL festlegen, wenn erforderlich.

Ansonsten hast Du für eine Gesamt-Suche immer die Datensätze aller Jahre in einer einzigen Tabelle zur Verfügung.
 
uhmmm, nunja , so ist es auch eigentlich. Entschuldigung, das habe ich gehörig rhetorisch vermasselt.
Wenn ich die SQL Datenbank anlege, ist auch alles in einer SQL drin, nur halt unterteilt für 2003 und 2004. Ich mache das über xls Tabellen, die ich dann in SQL konvertiere.
Ich habe keine Spalte mit Datum, die gibts nicht. Lässt sich auch nachträglich nicht mehr realisieren, da mir bei allen bereits vorhandenen Einträgen das Datum fehlt.
Die SQL Datenbank hat nun also zwei Tabellen. Wie kann ich die nun beide durchsuchen lassen?
Sowas wie "Zeige mir alle IPs vom Playername "X", gleich ob 2003 oder 2004".
 
Hi

gut, das konnte ich jetzt nicht wissen, ist aber nicht die wirklich gute und effiziente Lösung. Wobei es ja nicht schwierig ist, der entspr. Tabelle das Datum nachträglich einzufügen.

Aber ein Lösungsansatz:

Man kann (ich sage kann, weil ich nicht genau weiss, ob mySQL dies unterstützt) unterschiedliche Tabellen mit einer UNION-Anweisung in einem Statement auslesen.

bsp.

select id, nachname, vorname from 2003 where nachname ='meier' //oder Variable
union
select id, nachname, vorname from 2004 where nachname ='meier' //oder Variable

etc.

Ansonsten wüsste ich nur, für jede Tabelle seperat ein SQL-Statement anzulegen und die gesuchten Datensätze dann jeweils in einer While-Schleife auszulesen.
 
Zurück