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

hvordan kan jeg få en feltværdi i 3 tilknytningstabeller med maks. dato

Du havde et problem med, hvordan du skulle vælge den maksimale dato, da måneden blev vist først. En anden måde er at hente værdien for max_date (fra en underforespørgsel). Efter den kan du sammenligne efter de forskellige dele af datoen . Kode som følger:

select site_name, site_date, name 
 from
  (
    select  site_name, st.date as site_date, name, s.id, (select max(sto.date) from site_topology sto) as max_date
    from site s 
     inner join site_topology st on s.id =st.id_site
     inner join topology t on st.id_topology = t.id 
  )  as v
 where YEAR(site_date) = YEAR(max_date) AND MONTH(site_date) = MONTH(max_date) AND DAY(site_date) = DAY(max_date)
 group by name
 order by site_name

Test her .



  1. Hvordan tilføjer man en række strenge i stigende id i enhver tabel?

  2. Hent pl/sql-array-returværdier i java

  3. Sådan gemmer du datoer, der er ældre end tidsstemplet i PHP

  4. Vælg kolonner af tabelindeks