Mailinglisten-Archive |
Normalisiere wie folgt:
Tabelle A
+--------------------+----------------------+----------------+
| name_id | strasse | ort |
+--------------------+----------------------+----------------+
| 1 | Musterstraße | Musterort |
| 1 | Andere Straße | Nirgendwo |
| 1 | Noch eine Straße | Somewhere |
| 2 | Keine Straße | Irgendwo |
| 3 | Bergstraße | Bergdorf |
| 3 | Alpenstraße | NochEinOrt |
+--------------------+----------------------+----------------+
Tabelle B
+--------------------+--------+
| name | name_id|
+--------------------+--------+
| Egon Mustermann | 1 |
| Alfred Irgendwas | 2 |
| Sepp Alm | 3 |
+--------------------+--------+
Jetzt kannnst du mit queries a la
select count(name_id) from a
anzeigen lassen, zu welcher id wie viele adressen gespeichert sind.
Eine "Namen+Adressenliste" mit allen Namen und Adressen bekommst Du mit
select name, strasse, ort from a, b where a.name_id = b.name_id
oder alle Namen und Adressen, auch wenn keine Adressen vorhanden sind
(kann ja vorkommen)
select name, strasse, ort from b left join a on b.name_id = a.name_id
oder alle Namen und Adressen, auch wenn keine Namen vorhanden sind (kann
ja vorkommen)
select name, strasse, ort from a left join b on a.name_id = b.name_id
(ps: keine gewähr für die queries, sie sind nur "hingeschmiert", probier
sie selbst aus!)
(pps: ein eindeutiger key für die Adressen wäre auch sinnvoll, z.B.
adress_nr, erleichtert gezieltes löschen und update)
Mehr zum Thema Joins siehe Handbuch, ebenso zum Thema Normalisieren
Eine Einführung für Einsteiger auf deutsch bietet das hier oft erwähnte
Online-Handbuch von Guido Stepken:
http://www.little-idiot.de/mysql
Gruss, Rüdiger
--
I N T E R M E D I A T E GmbH&Co.
System- und Beratungshaus fuer eBusiness
Durlacher Allee 95 t +49 (0)721.98644-50
76137 Karlsruhe f +49 (0)721.98644-99
http://www.intermediate.de
PS: Besuchen Sie uns auf der CeBIT 2000 in Hannover (24.02. bis
01.03.2000)! Halle 2, Stand D28 Demopunkt A71 (IBM Partnerstand).
---
*** Abmelden von dieser Mailingliste funktioniert per E-Mail
*** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe
php::bar PHP Wiki - Listenarchive