Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
doppelte einträge in tabellen einfach auslesen [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
doppelte einträge in tabellen einfach auslesen


 
cent
12-12-2001, 13:27 
 
Hallo,
ich frage tabellen über eine schleife ab und $bla[]
hat z.b. die werte

- eins
- zwei

for ($i=0; $i<count($bla); $i++) {
$query = "SELECT * FROM tabelle1_$bla[$i] AS tab1 JOIN tabelle2_$bla[$i] AS tab2 WHERE tab1.id = tab2.id";
}

mein problem ist aber nun, dass es vorkommen kann das in der tabelle1_eins und tabelle1_zwei in der spalte ort doppelte einträge sind. gibt es denn eine möglichkeit doppelte datensätze nur einfach auszugeben auch wenn die abfragen über eine schleife erfolgt?
wenn ich "group by ort" setze, dann bezieht er es ja immer nur auf die aktuelle tabelle die abgefragt wird. und wenn es nun in der tabelle1_eins den wert münchen und in der tabelle2_zwei den wert münchen gibt bekomme ich tortzdem zweimal münchen ausgelesen.

geht es vielleicht über einen trick? danke :)

 
Sky
12-12-2001, 15:24 
 
hm.. SELECT DISTINCT...?

 
cent
12-12-2001, 15:35 
 
was bedeutet denn DISTINCT genau?

 
JoelH
12-12-2001, 15:44 
 
DISTINCT gibt jede Antwort nur einmal aus.

 
cent
13-12-2001, 12:00 
 
mhm. ne das funktioniert nicht. also kann ja theoretisch auch nicht so ganz funktionieren, da ich ja die tabellenabfrage öfters starte und er somit trotzdem gleiche einträge doppelt ausgibt.

 
cent
13-12-2001, 12:17 
 
cool. ich hab es nun. falls es jemanden interessieren soll :)
man ließt einfach alle daten aus allen tabellen in einen array und mit array_unique bekommt man dann keine doppelten daten mehr :) hätte man so gesehen im php forum lassen können ;) ;) ;)

trotzdem danke :)

 
KinNeko
13-12-2001, 13:42 
 
Klar kann man das mit PhP hinbiegen..
Nur sollte man gleich die komplette Anfrage sofort an die Datenbank stellen..
Datenbanken haben zu diesem Zweck Anfrageoptimierer die du nicht so schnell so gut programmieren kannst. Das gilt im besonderen für das Hantieren mit größeren Datenmengen. Und dein Skript läuft auch auf neueren/älteren Versionen der Datenbank bzw allen die SQL Anweisungen unterstützen.

Theoretisch kann du halt alle Datenbanken in Arrays laden und per Hand (php) durchsuchen..nur ist das nicht der Sinn von Datenbanken. Dann könntest du die Daten auch komplett in einer Txt abspeichern..das macht bei der Laufzeit dann auch nichts mehr.

 
cent
13-12-2001, 13:52 
 
aber mit mysql gibt es doch keine lösung ...... ?

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:14 Uhr.