Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak znaleźć brakujące wiersze (daty) w tabeli mysql?

Najprostszym sposobem na znalezienie brakujących dat jest użycie tabeli kalendarza. Opublikowałem kod do tworzenia i wypełniania tabeli kalendarza dla PostgreSQL ; powinieneś być w stanie go dostosować bez żadnych problemów.

Po umieszczeniu tabeli kalendarza Twoje zapytanie jest dość proste i łatwe do zrozumienia. Aby znaleźć brakujące daty na październik 2011 r., użyjesz czegoś podobnego do tego. (Zgadywanie przy stole z "postami".)

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pobierz wszystkie dzieci według identyfikatora rodzica i klauzuli gdzie w mysql

  2. Błąd połączenia JDBC:nierozpoznana strefa czasowa

  3. Zapytanie MySQL dla określonego zakresu dat

  4. Zapytanie MySQL Insert nie działa z klauzulą ​​WHERE

  5. Błąd składni MySQL ON DUPLICATE KEY UPDATE