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

Làm thế nào để nhận tổng số giờ giữa hai ngày trong máy chủ sql?

@codeka đã trả lời với phần giờ (từ tiêu đề của bạn) nhưng trong phần nội dung câu hỏi của bạn, bạn đã hỏi hàng giờ và phút nên đây là một cách

 select DATEDIFF(hh, @date1, @date2) as Hours_Difference,   
    DATEDIFF(mi,DATEADD(hh,DATEDIFF(hh, @date1, @date2),@date1),@date2) as Minutes_Difference

Những gì điều này làm trong phần đầu tiên là những gì @codeka đã thể hiện. Nó cung cấp cho bạn ngày tháng giữa hai ngày trong số giờ thực tế. Thuật ngữ thứ hai trong sql cho biết ngày tháng tính bằng phút giữa (ngày đầu tiên + số giờ trôi qua) và ngày thứ hai. Bạn phải loại bỏ giờ khỏi phương trình trong phần phút hoặc bạn sẽ nhận được số phút thực tế giữa các ngày. Datediff và các số nhận dạng Datepart được phép của nó có thể được nghiên cứu tại đây:
http://msdn.microsoft.com/en-us/library/ms189794.aspx



  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 chi tiết tài khoản dịch vụ của dịch vụ đại lý SQL

  2. Làm cách nào tôi có thể kết hợp dữ liệu của mình vào lịch để nhận bản ghi cho mỗi ngày từ đầu đến cuối trong SQL Server

  3. Mệnh đề SQL WHERE .. IN nhiều cột

  4. Làm cách nào để thực thi một thủ tục được lưu trữ trong MS SQL Server trong java / jsp, trả về dữ liệu bảng?

  5. Truy vấn ngày tạo bảng SQL Server