CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
17.06.2006, 03:27:09
|
Anfänger
|
|
Registriert seit: Apr 2006
Beiträge: 28
|
|
Brauche hilfe in Abfrage über zwei Tabellen
Hallo, hab ein großes Problem, weil bei Phpmyadmin folgende Abfrag über zwei Tabellen nicht gehen und beim mysql control center auch nicht, habe deswegen stress !
der Statement lautet:
select * from hobby, rel_verwandte_hobby where hobby.Sportart = rel_verwandte_hobby.hobbynr.
ich habe die schulungscd von video2brain.com nochmal angesehen, aber keinen Fehler gefunden. Aber trotzdem, zeigt phpmyadmin, dass da ein fehler ist!
Fehler
SQL-Befehl: Dokumentation
SELECT *
FROM hobby, rel_verwandte_hobby
WHERE Sportart = rel_verwandte_hobby.hobbynr.
LIMIT 0 , 30
MySQL meldet: Dokumentation
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0, 30' at line 2
was ist da bloß für ein fehler ?
der befehl besagt, dass aus der Tabelle hobby der Wert vom Feldnamen "Sportart" der Tabelle hobby (Sportart ist der primäschlüssel von dieser Tabelle) mit dem Frmdschlüssel aus der Tabelle rel_verwandte_hobby Feldname: hobbynr. identisch sein soll.
in mysql control center ist er ebenfalls falsch ???
der Vergleichsoperator (=) besagt, dass aus den Tabellen, die werte gleich sein müssen. und hierbei sind die gleich, aber trotzdem einen Fehler.
dann habe ich im forum gelesen, das die häufige fehlerursache mit dem ' ist. Aber alle anderen Abfragen liefen einwandfrei, wo ist da der Fehle ?
bei denen, habe ich die Tabellennamen und die Feldnamen nicht in doppelten Gänsefüßchen gesetzt, wohl aber die Werte. und die Abfragen sowie, der update befehl haben geklappt ! ???
kratz, kratz (tu´ich eben am Kopp . . . !)
bitte antworten, weil ich zur zeit ziemlich stress habe ! ich bedanke mich rechtherzlich (mega stress, wegen diesem Fehler )
|
17.06.2006, 13:23:13
|
Anfänger
|
|
Registriert seit: Jun 2006
Ort: Flensburg
Beiträge: 12
|
|
AW: Brauche hilfe in Abfrage über zwei Tabellen
das folgende sollte dir das ergebnis liefern, wenn ich deine frage richtig verstanden hab.
PHP-Code:
SELECT *
FROM hobby, rel_verwandte_hobby
WHERE hobby.Sportart = rel_verwandte_hobby.hobbynr
LIMIT 0 , 30
du bekommst jetzt die jeweiligen colls der tabellen wo Zelle Sportart in Tabelle hobby den gleichen wert hat wie Zelle hobbynr in Tabelle rel_verwandte_hobby.
Wenn das nicht das gewünschte sein sollte bitte deine Frage etwas präzisieren. Was willst du genau vergleichen?
|
18.06.2006, 01:54:29
|
Anfänger
|
|
Registriert seit: Apr 2006
Beiträge: 28
|
|
AW: Brauche hilfe in Abfrage über zwei Tabellen
also, genau will ich:
ich möchte, dass der Primärschlüssel aus der Tabelle hobby (Feldname: Sportart) mit den Wert des Fremdschlüssels aus der Tabelle hobby (Feldname: hobbynr.) aus der Tabelle: rel_verwandte_hobby verglichen wird und anschließend alle Datensätze ausgegeben werden, die genau diese Werte gleich haben.
Also:
dass beispielsweise alle verwandten die gleiche Sportart haben, nämlich Teakwondo ! (alle Datensätze, der beiden Tabelllen, sollen ausgewählt, bzw durchsucht werden)
jemand anderes hatte gemint, dass hierbei der Fehler liegt, aber leider nein !
where hobby.Sportart = rel_verwandte_hobby.hobbynr.
Da sollte ich den letzten Punkt entfernen, es hat aber leider nicht geklappt !
(Der Feldnane des Fremdschlüsselfeldes, heißt: hobbynr.)
warum, darf der Feldname, des Primärschlüssels, nicht mit dem Feldnamen, des Fremdschlüssels gleich sein ?
Gruss
Stefan, Danke !
Geändert von selbstlerner (18.06.2006 um 01:56:04 Uhr)
|
18.06.2006, 12:11:53
|
Anfänger
|
|
Registriert seit: Jun 2006
Ort: Flensburg
Beiträge: 12
|
|
AW: Brauche hilfe in Abfrage über zwei Tabellen
also als erstes würde ich niemals eine tabelle oder zelle mit einem punkt benennen, was immer zu fehlern bei der schreibweise führt. wie man bei meinem obigen post sehen kann.
also benenne deine hobbynr. in hobbynr um. das wäre mein erster tipp.
wenn ich dein problem richtig verstehe hast du 2 tabellen.
in tb1 steht z.b.
1,tischtennis
2,fußball
3,handball
in tb2 steht:
hans,1
birte,1
marco,2
peter,1
etc.
jetzt willst du als ausgabe:
hans,tischtennis
birte,tischtennis
etc.
wenn dem so ist mach ein left join
PHP-Code:
SELECT * FROM tb1 LEFT JOIN tb2 ON tb1.sportart=tb2.hobbynr WHERE tb2.hobbynr IS NOT NULL
habs nicht getestet sollte aber gehen.
hier siehst du auch warum du eine zelle nicht mit einem "." enden lassen solltest, weil man mit "." verknüpft. oder du musst dir die schreibweise mit ` angewöhnen.
__________________
ÄSMA
Logen
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 16:18:21 Uhr.
|