sql >> Databáze >  >> RDS >> Mysql

Odkazování na vnější dotaz v poddotazu

S připojením můžete udělat něco takového:

select * from table a
    inner join (
       select id,
              max(
                  if(`date` <= __LOWERLIMIT__ ,`date`, 0)
              ) as min_date,              
              min(
                 if(`date` >= __UPPERLIMIT__ , `date`, UNIX_TIMESTAMP())
              ) as max_date
           from table
           where id = __ID__
           group by id
    ) range on
    range.id = a.id and
    a.`date` between min_date and max_date;

Nejsem odborník na MySQL, takže se omlouvám, pokud je potřeba trochu doladit syntaxi.

Aktualizace: OP také našel toto velmi pěkné řešení .




  1. Přehled docházky v MySql

  2. Zabezpečení databáze – šifrování záloh během přepravy a v klidu

  3. Neznámý sloupec při použití aliasu mysql

  4. Vypočítejte bod 50 mil daleko (sever, 45 % SV, 45 % JZ)