Mysql
 sql >> Database >  >> RDS >> Mysql

Ordinare il risultato della query per campo da una tabella diversa (MySQL)

Se ho capito bene, useresti 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');

Nota:se stai memorizzando le date in stringhe, usa il formato standard ISO AAAA-MM-GG. Se hai utilizzato questo formato, str_to_date() non sarebbe necessario, perché un ordine alfabetico della rappresentazione della stringa sarebbe corretto.

Inoltre, se potrebbe non esserci una corrispondenza nel werte tabella, quindi dovresti usare left join invece di inner join . Quanto sopra presuppone che ci sia una corrispondenza (o desideri solo righe che hanno una data).