dbTalk Databases Forums  

select distinct problems

comp.databases comp.databases


Discuss select distinct problems in the comp.databases forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
knoxville
 
Posts: n/a

Default select distinct problems - 07-31-2003 , 03:03 AM






hi i have a problem with a select distinct command, it just wont eat
it.

this is the code, the databases all exist so that shouldnt be the
problem
<?
$query = "SELECT DISTINCT users.userid, adressen.nachname,
adressen.vorname, adressen.personenid AS adressen_personenid

FROM adressen
INNER JOIN users ON adressen.personenid = users.personenid
INNER JOIN klassen
INNER JOIN module
INNER JOIN kurse
INNER JOIN dozentenliste
INNER JOIN ereigniss ON dozentenliste.ereignissid =
ereigniss.ereignissid
ON klassen.klassenid = ereigniss.klassenid
INNER JOIN klassenzuteilung
ON klassen.klassenid = klassenzuteilung.klassenid
ON users.userid=klassenzuteilung.userid

WHERE klassenzuteilung.userid = '".$_SESSION[UserData][UserID]."'
";

echo getHTMLselectlist($query, "Form[DozentID]");
?>


this is the error message i get

Query: SELECT DISTINCT users.userid, adressen.nachname,
adressen.vorname, adressen.personenid AS adressen_personenid FROM
adressen INNER JOIN users ON adressen.personenid=users.personenid
INNER JOIN klassen INNER JOIN module INNER JOIN kurse INNER JOIN
dozentenliste INNER JOIN ereigniss ON
dozentenliste.ereignissid=ereigniss.ereignissid INNER JOIN ereigniss
ON klassen.klassenid=ereigniss.klassenid INNER JOIN klassenzuteilung
ON klassen.klassenid=klassenzuteilung.klassenid INNER JOIN
klassenzuteilung ON users.userid=klassenzuteilung.userid WHERE
klassenzuteilung.userid = '7'

Error: Fehler beim Senden der Abfrage: You have an error in your SQL
syntax near 'INNER JOIN module INNER JOIN kurse INNER JOIN
dozentenliste IN' at line 6


thanks in advance

Reply With Quote
  #2  
Old   
--CELKO--
 
Posts: n/a

Default Re: select distinct problems - 07-31-2003 , 04:58 PM






ON clauses associate with the nearest JOIN operator. Try using the
old notation:

SELECT DISTINCT users.userid, adressen.nachname,
adressen.vorname, adressen.personenid AS adressen_personenid
FROM adressen, users, klassen, module, kurse, dozentenliste,
ereigniss, klassenzuteilung
WHERE adressen.personenid = users.personenid
AND dozentenliste.ereignissid = ereigniss.ereignissid
AND klassen.klassenid = ereigniss.klassenid
AND klassen.klassenid = klassenzuteilung.klassenid
AND users.userid = klassenzuteilung.userid
AND klassenzuteilung.userid = '.$_SESSION[UserData][UserID].';

And we see that you have 8 tables and only 5 join predicates!

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.