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

MySQL:Wybierz wszystkie daty z zakresu dat i uzyskaj dane z tabeli pasujących do dat

Doszedłem do tego, modyfikując zapytanie podane w rozwiązaniu do pobierania wszystkich dat.

Poniższe zapytanie zwraca wszystkie daty i liczby identyfikatorów, jeśli istnieją jakiekolwiek rekordy:

select d.date, count(v.id) from 
(select adddate('1970-01-01',t4.i*10000 + t3.i*1000 + t2.i*100 + t1.i*10 + t0.i) date from
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t0,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t1,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t2,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t3,
 (select 0 i union select 1 union select 2 union select 3 union select 4 union select 5 union select 6 union select 7 union select 8 union select 9) t4) d
left join visitors v on d.date = v.date
where d.date between '2016-06-01' and '2016-06-30'
group by d.date
order by d.date

Uprzejmość w celu uzyskania zakresu dat trafia na adres @mark-bannister i proste sprzężenie w dopasowaniu zapytania w celu uzyskania wyników, a sortowanie daje rozwiązanie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zmień dane jednej komórki w mysql

  2. Błąd:Źródło danych odrzuciło nawiązanie połączenia, wiadomość z serwera:Za dużo połączeń

  3. Jak ZAŁADOWAĆ INFILE DANYCH w mysql z pierwszym col będącym automatycznym przyrostem?

  4. PHP:pobierz obraz z MySQL za pomocą PDO

  5. jak zachować wartość hash w kolumnie tabeli w railach