Eenvoudige vraag over selecteren

Status
Niet open voor verdere reacties.
kan je toch nog even aangeven waar ik de andere velden nog moet invullen met die komma scheiding lijk het toch niet helemaal te snappen
 
SELECT

SC.name
, SF.data_txt
, SF.date
, SC.nogiets


FROM jos_sobi2_categories SC
JOIN jos_sobi2_fields_data SF ON SC.catid = SF.fieldid
WHERE catid = 2


dus SC als je het vanuit de tabel jos_sobi2_categories wil en dan een punt en dan de kolomnaam
en anders dus SF als je het vanuit de tabel jos_sobi2_fields wil en dan een punt en dan de kolomnaam

in de bovenstaande query geef ik wat voorbeelden die niet bestaan.

het komt op de volgorde te staan die je zelf aanhoud in bovenstaande (vet gemarkeerde gedeelte)

zo beter ??

dus gewoon een comma ,tabelafkorting "punt". kollom
 
dus gewoon een comma ,tabelafkorting "punt". kollom

Let op: die afkorting zit er alleen tussen voor de (on)leesbaarheid.

Dit is net zo geldig:

SELECT
jos_sobi2_categories.name
, jos_sobi2_fields_data.data_txt
, jos_sobi2_fields_data.date
, jos_sobi2_categories.nogiets

FROM jos_sobi2_categories
JOIN jos_sobi2_fields_data ON jos_sobi2_categories .catid = jos_sobi2_fields_data.fieldid
WHERE catid = 2

Het is verstandig om altijd aan te geven welke uit tabel de bewuste kolom moet worden opgehaald zodat je in je applicatie(!) weet wat je hebt doorgekregen. Het is bijvoorbeeld erg populair om in elke tabel altijd een koom 'id' te spammen en dat werkt niet als je tien tabellen moet joinen.

Behandel aliassen niet als afkortingen om tikwerk te besparen, je spaar er namelijk helemaal niets mee en het gaatg gewoon fout. Ik heb draken van queries gezien met een p voor producten, een c voor categorieen, een pc voor product_categories koppelingen, een cp voor de cockpit referentie, een ccp voor de customer-cockpit-referentie, en... afijn, je begrijpt dat ik niet erg veel vertrouwen heb in dat je straks sc, sa, sb,su,jc,cj en jca nog uit elkaar gaat houden. Ja, *nu* is het je wel duidelijk, maar als je over een week weer naarde query kijkt zul je toch echt naar de FROM moeten kijken om te zien wat je ookalweer bedoelde met sc.

Als je wilt afkorten of abstraheren, gebriuk dan een eenvoudig te tikken tekst die nog wel precies aanwijst waar het over gaat. Je kunt "jos_sobi2_categories" opzich prima afkorten naar "categories", of "cats" als je wilt, dat het uit "jos_sobi2" komt is dan een tweede, maar je ziet precies dat het over categorieen gaat. (de prefix jos_sobi2 geeft mij ook een onderbuikgevoel van een ontwerpfout...)
 
ik geef je volkomen gelijk Pgvicent , maar met afkortingen vind ik het wel overzichtelijker (ook nadat er heel veel joins aan te pas komen) maar om het te leren is dit natuurlijk makkelijker..
bedankt voor de aanvuling.



Ps. Bijlmer vergeet je vraag niet op opgelost te zetten als het is opgelost. :P
 
dank, ga er mee aan de slag mocht het niet lukken dan kom ik nog een keertje terug
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan