Zurück   Flashforum > Flash und Server > PHP und MySQL

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-01-2009, 15:25   #1 (permalink)
peoplesinstinctivetravel
 
Benutzerbild von ran2
 
Registriert seit: Aug 2002
Ort: konstanz
Beiträge: 775
JOIN oder nicht join ?

Hallo zusammen,

lang lang ist es her das ich was direkt mit mySQL gemacht habe...

nun habe möchte gerne folgendes umsetzen: ich poste am besten mal den syntax, der funktioniert zwar nicht, sollte aber doch aufschluss über mein vorhaben geben:

PHP-Code:
select tab1.id,tab2.uid from tab1,tab2 WHERE tab2.uid tab1.id AND tab1.binaerevar=
nur irgendwie wird da jegliche kondition völlig ignoriert. was mache ich falsch.

mysql 5.0.41

vielen dank für hinweise
ran2 ist offline   Mit Zitat antworten
Alt 23-01-2009, 16:00   #2 (permalink)
exestiert hier nicht
 
Registriert seit: Jun 2002
Ort: Osnabrück
Beiträge: 1.728
Hi, so sollte der Syntax funktionfähig sein.
PHP-Code:
SELECT t1.id AS idt2.uid AS uid FROM tab1 AS t1 LEFT JOIN tab2 AS t2 ON t2.uid t1.id WHERE t1.binaerevar=
Das sollte klappen.

Edit:
Auf die Rückgabewerte kannst du dann direkt mit 'id' und 'uid' zugreifen oder halt über den Array
__________________
<? if(!$success){ $try++; } ?>
~Es ist so grausam, dass der Intelligenz Grenzen gesetzt sind und der Dummheit keine.~

Werbung:
- Ajax File Manager ( KFM - Kae's File Manager )

Geändert von Funkey (23-01-2009 um 16:01 Uhr)
Funkey ist offline   Mit Zitat antworten
Alt 23-01-2009, 16:02   #3 (permalink)
peoplesinstinctivetravel
 
Benutzerbild von ran2
 
Registriert seit: Aug 2002
Ort: konstanz
Beiträge: 775
habe es nun selbst auch ohne join hinbekommen.... das tut bei mir auch:


PHP-Code:
SELECT  T1.uid,T2.id,
FROM  tabelle1 T1tabelle2 T2
WHERE  T1
.uid T2.id AND T1.binaerevar=
hat das nachteile ? Womöglich hatte ich die reihenfolge falsch... ????

danke jedenfalls
ran2 ist offline   Mit Zitat antworten
Alt 23-01-2009, 16:06   #4 (permalink)
exestiert hier nicht
 
Registriert seit: Jun 2002
Ort: Osnabrück
Beiträge: 1.728
Hmm, ob das Nachteile hat weiß ich nicht. Einfach mal mit nem kleinen Benschmark ausprobieren was schneller läuft, wenn viele Datensätze verglichen werden.

In der DB solltest du id und uid zum INDEX hinzufügen, da die Werte oft verglichen werden.
__________________
<? if(!$success){ $try++; } ?>
~Es ist so grausam, dass der Intelligenz Grenzen gesetzt sind und der Dummheit keine.~

Werbung:
- Ajax File Manager ( KFM - Kae's File Manager )
Funkey ist offline   Mit Zitat antworten
Alt 23-01-2009, 16:10   #5 (permalink)
peoplesinstinctivetravel
 
Benutzerbild von ran2
 
Registriert seit: Aug 2002
Ort: konstanz
Beiträge: 775
jup da hast du recht ! danke
ran2 ist offline   Mit Zitat antworten
Alt 24-01-2009, 09:34   #6 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Ich kann dir sagen: Das ist übel.

Du verwendest mit diesem FROM tbl1, tbl2 nicht nur den alten SQL 1 Syntax, sondern machst auch noch ein winziges Kreuzprodukt der Tabellen, was so ziemlich das ärgste ist, was man tun kann, wenn man keines braucht.
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Alt 24-01-2009, 10:22   #7 (permalink)
peoplesinstinctivetravel
 
Benutzerbild von ran2
 
Registriert seit: Aug 2002
Ort: konstanz
Beiträge: 775
hehe. die üblichen verdächtigen

da kannst du mir ja auch sicher sagen, wie ich das nach dem aktuellen standard machen kann...

eigentlich habe ich den ganzen MySQL kram wieder hervorgeholt um es auf meinem localhost mit der statistik environment R zu verwenden. Das ganze läuft lokal bin also weder auf sicherheit oder geschwindigkeit angewiesen, aber natürlich hast du recht- Ich würds schon gern richtig machen. Also wie am besten ?

Die Grundsätzliche Aufgabenstellung ist eigentlich immer so:
In der Datenbank hat relationale tabellen, daraus muss zumindest für den bearbeitungsprozess EINE matrix erzeugt werden in der jeweils eine Zeile einer Beobachtung entspricht. Alles andere wird sehr unpraktikabel weil R ziemlich auf matrizen und vektoren ausgerichtet, so dass du auf keine schleifen brauchst deswegen.

Der langen rede kurzer Sinn: Die Abfrage wird eigentlich direkt aus R über eine Schnittstelle gemacht und in der runtime environment zwischen gespeichert und weiterverarbeitet. Bestenfalls wird dann das ergebnis mal wieder zurück in der db gespeichert, aber soweit bin ich noch net
ran2 ist offline   Mit Zitat antworten
Alt 24-01-2009, 10:24   #8 (permalink)
Affine Abbildung
 
Benutzerbild von Samuel
 
Registriert seit: Feb 2002
Ort: Bremen
Beiträge: 15.089
Funkeys Join sieht schon ziemlich gut aus
__________________
Solange sich auch nur einer an ihn erinnert, solange auch nur ein Herz mit Leidenschaft schlägt - wie kann ein Traum da sterben?

If you use the wrong line ending characters when writing your files, you might find that other applications that open those files will "look funny". - PHP.net

Hier ruhn meine Gebeine - ich wollt, es wären Deine.

Try to look unimportant, they may be low on ammo!

Was ist euer Lieblings-Datentyp? Schreibt mir!
Samuel ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
join, mysql

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



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

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele