Het is ongetwijfeld heeeeeel simpel, maar hoe sorteer ik een colom op de waardes uit twee verschillende tabellen?

zegmaar


<?
SELECT veldje FROM tabel1 ORDER BY bla AND FROM tabel2 ORDER BY schaap
?>



snapt u wel?
Waar is het verband tussen beide tabellen? Ik zie hier geen JOIN o.i.d., er valt dus niet te sorteren op data waar geen verband tussen zit.
nee hehe deze briljante query heb ik zelf in elkaar geflanst en ik verwacht ook heus niet dat het zo echt moet :)

en nee JOIN kan al niet omdat de veldnamen niet hetzelfde zijn...

de mensen vóór mij deden het zo:


<?php
SELECT DISTINCT sector.id, sector.name FROM sect_vaca LEFT JOIN sector ON sect_vaca.sector=sector.id ORDER BY sector.id
?>


maar hier snap ik zelf dan weer weinig van... ik zie wel hoe het werkt maar ik krijg het zelf niet aan de praat.

volgt u het nog?
Kijk eens hier voor een uitleg over het gebruik van JOIN.

Wat wil je precies bereiken/selecteren met je query, hoe ziet je datamodel eruit en op welke kolommen wil je selecteren?
In een ORDER BY-component mogen meerdere kolommen gespecifieerd worden. Wat je volgens mij bedoeld ziet er als volgt uit.

<?php
SELECT tabel1.veldnaam1, tabel2.veldnaam2
FROM tabel1 LEFT OUTER JOIN tabel2
ON (tabel1.veldnaam2 = tabel2.velnaam2)
ORDER BY tabel1.veldnaam1, tabel2.veldnaam2
?>

Uiteraard dien je de join aan te passen aan het soort join dat je zelf nodig hebt :
INNER JOIN
LEFT [OUTER] JOIN
RIGHT [OUTER] JOIN
FULL [OUTER] JOIN
UNION JOIN
CROSS JOIN
Verder nog een woordje uitleg over "ON (tabel1.veldnaam2 = tabel2.velnaam2)". Hiermee leg je de link tussen de 2 tabellen, beide moeten dus een veld hebben dat dezelfde waarde bezit.

Reageren