hallo liebe gemeinde,
habe grade probleme mit einer sql abfrage, einem join.
sieht so aus
SELECT
a.id,a.name,a.birthday, b.uid, b.tid FROM users a
INNER JOIN buddies b ON a.id='REGEXP 0x2e2a3f' AND a.id = b.uid
OR a.id = 1 where a.id=1 /**hier kommt der fehler **/
union select a.name,'a','a','a','a' from anothertable a
order by a.name ASC
limit 0,1
über denn sinn kann man natuerlich streiten, lerne nur gerade sql+joins.
der error ist jedenfalls, dass a.name nicht gefunden wurde im order teil. habe es doch aber wie oben das ganze selectet. wo ist der fehler?
danke!
der error ist jedenfalls, dass a.name nicht gefunden wurde im order teil.
So drückt sich die Datenbank bestimmt nicht aus. Bitte zitiere Fehlermeldungen im Wortlaut.
#1054 - Unknown column 'a.name' in 'order clause'
obwohl ich doch das ganze richtig verwende, oder nicht?
die column "name" gibt es natuerlich in "anothertable"
obwohl ich doch das ganze richtig verwende, oder nicht?
Vermutlich eher „oder nicht“.
Lies mal hier bzgl. ORDER BY bei UNIONs nach: MySQL :: MySQL 5.1 Reference Manual :: 12.2.8.3 UNION Syntax (http://dev.mysql.com/doc/refman/5.1/en/union.html)
dnake, aber das hilft mir nicht viel.
habe mal etwas gelesen, aber ich weiss nicht wo mein fehler liegt.
das geht ja
SELECT
a.id,a.name,a.birthday, b.uid, b.tid FROM users a
INNER JOIN buddies b ON a.id='REGEXP 0x2e2a3f' AND a.id = b.uid
OR a.id = 1 where a.id=1
order by a.name DESC
limit 0,1
wenn ich aber das ganze GENAU so wie oben ueberschreibe krieg ich den fehler
:(
Das Ergebnis von UNION kennt keine Tabellennamen mehr. Wie denn auch? Beispiel:
(
SELECT a.foo FROM tabelle_a AS a
)
UNION
(
SELECT b.foo FROM tabelle_b AS b
)
Heißt die Spalte jetzt a.foo oder b.foo? Soll das per Zufall entschieden werden? Nein, sie heißt einfach nur foo.
Davon abgesehen ist "name" ein Schlüsselwort in SQL und sollte nicht als Spaltenname verwendet werden.
dnake, aber das hilft mir nicht viel.
habe mal etwas gelesen, aber ich weiss nicht wo mein fehler liegt.
Und das hältst du jetzt für irgendwie hilfreich in Bezug auf das Problem ...?
„Habe mal etwas gelesen“ - *seufz*, *omfg*
Direkt an der Stelle, wo ORDER BY im Dokument zum ersten Mal auftaucht ([strg]+[f]), wird die Problematik erklärt.
diese stelle habe ich auch gelesen, klar. mit einem table alias â la "AS" klappt es auch, moechte es aber gerne anders hinkriegen.
wenn jemand eine hilfe geben moechte, danke!