Hvis jeg forstår det rigtigt, ville du bruge join
:
select f.*
from folders f join
werte w
on w.folder_id = f.id
where w.number = 2
order by f.approved, str_to_date(werte, '%d.%m.%Y');
Som en note:hvis du laver for at gemme datoer i strenge, så brug ISO-standardformatet ÅÅÅÅ-MM-DD. Hvis du brugte dette format, vil str_to_date()
ville være unødvendigt, fordi en alfabetisk rækkefølge af strengrepræsentationen ville være korrekt.
Også, hvis der muligvis ikke er et match i werte
tabel, så skal du bruge left join
i stedet for inner join
. Ovenstående forudsætter, at der er et match (eller du vil kun have rækker, der har en dato).