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

Hvordan finder man manglende rækker (datoer) i en mysql-tabel?

Den nemmeste måde at finde manglende datoer på er at bruge en kalendertabel. Jeg har sendt kode for at oprette og udfylde en kalendertabel til PostgreSQL ; du burde være i stand til at tilpasse det uden problemer.

Med kalendertabellen på plads er din forespørgsel ret enkel og let at forstå. For at finde de manglende datoer for oktober 2011, ville du bruge noget i denne retning. (Gætter på din "indlæg"-tabel.)

select c.cal_date
from calendar c
left join posts p on (c.cal_date = p.date)
where p.date is null
  and c.cal_date between '2011-10-01' and '2011-10-31'
  and p.userid = 1
order by c.cal_date


  1. TO_SECONDS() Eksempler – MySQL

  2. Om klynget indeks i postgres

  3. Bedste måde at installere hstore på flere skemaer i en Postgres-database?

  4. Indrullering af SQL Server i en distribueret XA-transaktion