[mysql] help please bij join-query fout ...

Pagina: 1
Acties:

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
Hi,
ben bezig met recepten database, waarbij ik o.a. 2 tabellen gebruik:
- category voor type recept (catID, catName)
- recipe voor de recepten, met o.a. veld recipeCategory waarvan nummer overeenkomt met de catID uit tabel category.

Nu wil ik een query waaruit komt:
recipeID, recipeName, recipeUserName en recipeCategory (die hij dus via de gezamelijk ID uit de tabel category moet halen),
... maar dat gaat fout, helaas.

Dit is mijn query:
code:
1
2
3
4
5
6
7
SELECT
    R.recipeID, C.catName, R.recipeName, R.recipeUserName
FROM
    category C, recipe R
WHERE
    C.catID = R.recipeCategory
ORDER BY R.recipeID

Vanuit de PHP pagina geeft ie de error dat er geen valid MySQL result uit komt,
doe ik de query rechtstreeks in MySQL dan zegt ie:

"You have an error in your SQL syntax near 'where C.catID = R.recipeCategory' "

Kan iemand mij zeggen wat hieraan fout is of kan zijn, ik kom er zelf niet uit ...

Thanx in advance,
Dr.B

NERDCORE FOR LIFE


Verwijderd

Kweetniet of dit goed is maar je kunt het uiteraard proberen:
WHERE C.catID == R.recipeCategory

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
Nope, dat is het helaas niet ....
Thnx anyWay!

NERDCORE FOR LIFE


  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Op zaterdag 13 oktober 2001 14:36 schreef jugfire het volgende:
Kweetniet of dit goed is maar je kunt het uiteraard proberen:
WHERE C.catID == R.recipeCategory
nee, SQL is geen php hoor..

maak dit van je query en het zou moeten werken:
code:
1
2
3
4
5
6
7
8
9
SELECT
    R.recipeID, C.catName, R.recipeName, R.recipeUserName
FROM     
    recipe R
LEFT JOIN
    category C
ON
    C.catID = R.recipeCategory
ORDER BY R.recipeID

niet 100% zeker, maar dacht wel dat het zo moest..

Verwijderd

Misschien een stomme vraag, maar heten de twee tables category C en recipe R, of gewoon C en R?

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Op zaterdag 13 oktober 2001 14:40 schreef WebHawk het volgende:
Misschien een stomme vraag, maar heten de twee tables category C en recipe R, of gewoon C en R?
die tables heten category en recipe. De C en R staan er achter zodat je ze in je query niet voluit hoeft te schrijven..

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
PlayR: Nope, ook zelfde error.
Is het overigens niet hetzelfde wat jij schrijft, alleen iets anders geformuleerd?
Senx,
Dr.B

NERDCORE FOR LIFE


Verwijderd

Bedankt, weer wat geleerd dus. Ik dacht dat het niet mogelijk was om de table naam maar voor een deel te schrijven. Voor mij, ben nog maar net begonnen met PHP, ziet dat er namelijk uit als een fout.

Verwijderd

Weet je wel zeker dat jouw versie van MySQL de Recipe R syntax wel ondersteunt?

Het ondersteunt een beperkt gedeelte van standaard SQL, pas bij versie 4 is het mogelijk om genestte selects te gebruiken.

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Op zaterdag 13 oktober 2001 14:52 schreef otaku-san het volgende:
Weet je wel zeker dat jouw versie van MySQL de Recipe R syntax wel ondersteunt?

Het ondersteunt een beperkt gedeelte van standaard SQL, pas bij versie 4 is het mogelijk om genestte selects te gebruiken.
dit zou idd wel eens zo kunenn zijn..

Welke versie van MySQL gebruik je Dr.Bob??

bij werkt je eerste query namelijk gewoon..

  • Grum
  • Registratie: Juni 2001
  • Niet online
category as C, recipe as R

is de moeite waard om te proberen :P

  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
Op zaterdag 13 oktober 2001 15:35 schreef Grum_ het volgende:
category as C, recipe as R

is de moeite waard om te proberen :P
ja, kan ook, maar die bovenste query werkt bij mij gewoon.. :?

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
Ik draai versie 3.23.39 van MySQL, zou het daarin moeten werken?
Dr.B

NERDCORE FOR LIFE


Verwijderd

Zit er misschien een verschil in het veld type dat je probeert te linken, dattie daarop braakt?
(ik bedoel dus bijvoorbeeld een INTEGER en een TEXT type)

  • Dr.Bob
  • Registratie: November 1999
  • Laatst online: 14-08 10:48

Dr.Bob

Dr.Bob says: HEAL!

Topicstarter
HANG ON!!!
Ja, hij doet het wel, sorry PlayR, was vergeten 1 dingetje te veranderen in m'n query.
Althans, hij werkt bijna, nog een paar errortjes, maar dat ligt volgens mij ergens anders aan.

Thanx allen!!!
Dr.B

NERDCORE FOR LIFE

Pagina: 1