De ene keer wel een vinkje, de andere keer niet
topic kan gesloten worden
Gewijzigd op 23/06/2010 21:45:08 door Elsy Vriens
Gesponsorde koppelingen:
SELECT
*,
s.naam AS softwarenaam
FROM
software AS s
LEFT JOIN
linken AS l
ON s.link_id = l.id
WHERE
s.software_rubriek_id = '2'
AND
l.zichtbaar <> FALSE
GROUP BY
s.id
Je query klopt ook niet de GROUP BY hoort er niet in thuis
en dit: l.zichtbaar <> FALSE gaat ook niet goed
dus zodoende zal het resultaat van die query ook niet veel soeps opleveren
en over de * in je query maar niets te schrijven, uiteraard kan dat ook nog eens de benodigde problemen opleveren dus benoeme gewoon de velden waarvan je de data nodig hebt.
en dan hebt ik nog wat te schrijven: je datbase model klopt niet je moet gaan normaliseren
*,
s.naam AS softwarenaam
FROM
software AS s
LEFT JOIN
linken AS l
ON s.link_id = l.id
WHERE
s.software_rubriek_id = '2'
AND
l.zichtbaar <> FALSE
GROUP BY
s.id
Je query klopt ook niet de GROUP BY hoort er niet in thuis
en dit: l.zichtbaar <> FALSE gaat ook niet goed
dus zodoende zal het resultaat van die query ook niet veel soeps opleveren
en over de * in je query maar niets te schrijven, uiteraard kan dat ook nog eens de benodigde problemen opleveren dus benoeme gewoon de velden waarvan je de data nodig hebt.
en dan hebt ik nog wat te schrijven: je datbase model klopt niet je moet gaan normaliseren
Gewijzigd op 23/06/2010 18:48:32 door Noppes Homeland
topic kan gesloten worden
Gewijzigd op 23/06/2010 21:45:35 door Elsy Vriens
De GROUP BY gebruik je als je wilt groeperen. Als je gewoon twee tabellen samenvoegt met een join is GROUP BY niet nodig maar veroorzaakt ook geen fout. Probeer een test-pagina te maken om je output te controleren. Een simpele pagina met de query gevolgd door het echo-en van het resultaat. Commentaar als "geen woorden aan vuil maken" en "normaliseren" zonder gerichte tips is gebakken lucht. De * in je query mag best maar is minder netjes, geeft eerder kans op fouten, het werkt wel. Er zijn puriteinen die dat meteen afkeuren helaas maar geen oplossing bieden. Enne, ik ben ook beginner met php.
Elsy Vriens op 23/06/2010 20:58:10:
@Noppes Homeland
Wat ben je toch vriendelijk!
l.zichtbaar <> FALSE -> heb ik op dit forum geleerd.
* -> heb ik uit de boeken en ook uit dit forum
GROUP BY moet volgens mij als je 2 tabellen samenvoegt.
En waarom zou ik niet goed normaliseren?
Ik ben op dit forum om te leren. Als ik alles al wist zou ik hier niet komen.
Ik zit niet op een school waar ik dit kan leren.
Ben "maar" een huisvrouw die alles zelf moet uitvissen.
Ik heb er meer aan als je me helpt hoe ik dit op kan lossen.
Met voorbeelden komen of zoiets.
Je kunt zeggen wat je wilt maar ik ben trots op wat ik al bereikt heb met mijn websites.
Zo, dat moest er even uit!
Nog iemand die me verder wil helpen dit op te lossen?
Wat ben je toch vriendelijk!
l.zichtbaar <> FALSE -> heb ik op dit forum geleerd.
* -> heb ik uit de boeken en ook uit dit forum
GROUP BY moet volgens mij als je 2 tabellen samenvoegt.
En waarom zou ik niet goed normaliseren?
Ik ben op dit forum om te leren. Als ik alles al wist zou ik hier niet komen.
Ik zit niet op een school waar ik dit kan leren.
Ben "maar" een huisvrouw die alles zelf moet uitvissen.
Ik heb er meer aan als je me helpt hoe ik dit op kan lossen.
Met voorbeelden komen of zoiets.
Je kunt zeggen wat je wilt maar ik ben trots op wat ik al bereikt heb met mijn websites.
Zo, dat moest er even uit!
Nog iemand die me verder wil helpen dit op te lossen?
Hij zegt toch wat de fouten zijn. Ik weet zeker dat hij het niet onvriendelijk bedoelt hoor.
Ik ga het helemaal opnieuw proberen.
check voor SQL syntax: http://www.w3schools.com/sql/sql_join.asp voor joins en deze website voor nog veel meer SQL syntax. Dit gaat wel alleen om het SQL taaltje en niet de combinatie met PHP.
Gewijzigd op 23/06/2010 21:50:02 door Aad B
Een waarde in een mysql tabel veld kan niet van het type BOOLEAN zijn dus
l.zichtbaar <> FALSE is gelijk aan appels met peren vergelijken
"* -> heb ik uit de boeken en ook uit dit forum"
Ja en dat is nu ook net het probleem, als ik aan jouw vraag om bij de groenteboer alleen appels te halen dan kom je toch ook niet terug met peren/banen/perziken/annanas enz.
GROUP BY gebruik je alleen als je SUM/COUNT/AVG/MIN/MAX aggregate functions hebt in je statement en die ziet ik toch echt niet.
-> http://www.w3schools.com/sql/sql_groupby.asp
"Ik zit niet op een school waar ik dit kan leren."
Wees blij, want daar worden de meest vreemdste zaken aangeleerd, die dan in de praktijk hardhandig er weer uitgeslagen moeten worden.
Normalisatie:
linix/mac dat zijn `OS`-en, dat kunnen dus absoluut geen tabel velden zijn
"Ben "maar" een huisvrouw die alles zelf moet uitvissen.
Ik heb er meer aan als je me helpt hoe ik dit op kan lossen.
Met voorbeelden komen of zoiets.
Je kunt zeggen wat je wilt maar ik ben trots op wat ik al bereikt heb met mijn websites."
Het maakt mij niet uit wie/wat/waar/hoe je bent.
"Nog iemand die me verder wil helpen dit op te lossen"
Ik wil je wel helpen maar dan moet je de query goed posten, zodat herleid kan worden welke veld waarden uit welke tabel komen. (dat is ook 1 van de redenen waarom je geen * moet gebruiken)
Overigens doe je het best goed, je code is overzichtelijk.....
l.zichtbaar <> FALSE is gelijk aan appels met peren vergelijken
"* -> heb ik uit de boeken en ook uit dit forum"
Ja en dat is nu ook net het probleem, als ik aan jouw vraag om bij de groenteboer alleen appels te halen dan kom je toch ook niet terug met peren/banen/perziken/annanas enz.
GROUP BY gebruik je alleen als je SUM/COUNT/AVG/MIN/MAX aggregate functions hebt in je statement en die ziet ik toch echt niet.
-> http://www.w3schools.com/sql/sql_groupby.asp
"Ik zit niet op een school waar ik dit kan leren."
Wees blij, want daar worden de meest vreemdste zaken aangeleerd, die dan in de praktijk hardhandig er weer uitgeslagen moeten worden.
Normalisatie:
linix/mac dat zijn `OS`-en, dat kunnen dus absoluut geen tabel velden zijn
"Ben "maar" een huisvrouw die alles zelf moet uitvissen.
Ik heb er meer aan als je me helpt hoe ik dit op kan lossen.
Met voorbeelden komen of zoiets.
Je kunt zeggen wat je wilt maar ik ben trots op wat ik al bereikt heb met mijn websites."
Het maakt mij niet uit wie/wat/waar/hoe je bent.
"Nog iemand die me verder wil helpen dit op te lossen"
Ik wil je wel helpen maar dan moet je de query goed posten, zodat herleid kan worden welke veld waarden uit welke tabel komen. (dat is ook 1 van de redenen waarom je geen * moet gebruiken)
Overigens doe je het best goed, je code is overzichtelijk.....
@allemaal
Bedankt dàt jullie in ieder geval nog willen antwoorden, ik was waarschijnlijk een beetje moedeloos.
Dan leer je dat het weer zo moet en dan moet het weer zo.....
Ik ga het helemaal opnieuw doen en dan horen jullie nog wel van me omdat het nu alweer niet lukt.
Ik krijg niet alle vinkjes op een rij als een website aan alle voorwaarden voldoet.
Dus mac, linux, online enz. software aanbied.
Zucht....
Bedankt dàt jullie in ieder geval nog willen antwoorden, ik was waarschijnlijk een beetje moedeloos.
Dan leer je dat het weer zo moet en dan moet het weer zo.....
Ik ga het helemaal opnieuw doen en dan horen jullie nog wel van me omdat het nu alweer niet lukt.
Ik krijg niet alle vinkjes op een rij als een website aan alle voorwaarden voldoet.
Dus mac, linux, online enz. software aanbied.
Zucht....
Elsy, kan je je berichten terug plaatsen. Het is zeker niet de bedoeling om dit topic onbruikbaar voor anderen te maken door je berichten weg te poetsen.



