Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

So sánh ngày giờ của MySQL với hàng trước

Điều này có thể được xử lý bằng cách quét tuần tự bảng và sử dụng các biến MySQL. Bạn có thể kiểm tra trong ( đã cập nhật ) 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. Nhân bản MySQL:nếu tôi không chỉ định bất kỳ cơ sở dữ liệu nào, thì log_bin có ghi lại MỌI THỨ?

  2. Biểu tượng WAMP Server V 2.5 có màu cam, không phản hồi và không có menu

  3. Giải thích bế tắc không thể giải thích

  4. Tìm kiếm toàn văn bản MySQL và SOUNDEX

  5. Truy vấn MySQL Not IN đột ngột dừng trả về kết quả