Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

bagaimana saya bisa mendapatkan nilai bidang dalam 3 tabel asosiasi dengan tanggal maksimum?

Anda memiliki masalah tentang cara memilih tanggal maksimal, karena bulan muncul lebih dulu. Cara lain adalah dengan memunculkan nilai max_date (dari sub-kueri). Setelah itu, Anda dapat membandingkan berdasarkan bagian tanggal yang berbeda . Kode sebagai berikut:

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

Pengujian di sini .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel - Pelanggaran batasan integritas:1452 Tidak dapat menambah atau memperbarui baris anak:batasan kunci asing gagal

  2. kesalahan fatal 'stdio.h' Python 2.7.3 di Mac OS X 10.7.5

  3. Bagaimana cara mengubah semua string kosong menjadi NULL dalam sebuah tabel?

  4. Urutan Angka di MySQL

  5. Pemicu MySQL setelah dimasukkan dan setelah pembaruan