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

Perbandingan datetime MySQL dengan baris sebelumnya

Ini dapat ditangani dengan pemindaian tabel secara berurutan dan menggunakan variabel MySQL. Anda dapat menguji di (diperbarui ) SQL-fiddle :

SELECT date2
     , dd 
     , DATE_FORMAT(dd, '%b %e, %Y') AS final_date
     , date1_duplicate
     , date1_was_null
FROM
( SELECT date2
       , COALESCE( (date1 = @d OR date1 = @prev), FALSE)
           AS date1_duplicate
       , (date1 IS NULL)               AS date1_was_null
       , @d := CASE WHEN (date1 = @d OR date1 = @prev) 
                 THEN date2 
                 ELSE COALESCE(date1, date2) 
               END AS dd
       , @prev := date1 AS pre
  FROM tableX AS t
    CROSS JOIN
      ( SELECT @d := DATE('1000-01-01')
             , @prev := @d 
      ) AS dummy
  ORDER BY date2 ASC 
) AS tmp
ORDER BY date2 DESC
;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengembalikan file dump dari mysqldump?

  2. Bagaimana cara menghilangkan kesalahan MySQL 'Pernyataan yang disiapkan perlu disiapkan ulang'

  3. #1273 - Susunan tidak diketahui:'utf8mb4_unicode_ci' cPanel

  4. Database kolom Laravel Sum Fasih

  5. Kekurangan mengutip bilangan bulat dalam kueri Mysql?