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

SQL chuyển đổi ngày giờ và trừ giờ

declare @createTime datetime = '2012-10-06 02:29:37.243';

-- original value, default formatting
select @createTime;

-- formatted
select convert(varchar, @createTime, 100);

-- subtract 4 hours, formatted
select convert(varchar, dateadd(hour, -4, @createTime), 100);

Truy vấn ở trên sử dụng dateadd sẽ luôn trừ đi 4 giờ. Nếu mục tiêu của bạn là chuyển đổi ngày giờ tùy ý từ UTC sang giờ địa phương thì sẽ phức tạp hơn vì phần bù mà bạn cần thêm / trừ phụ thuộc vào ngày giờ ban đầu. Một giá trị duy nhất như -4 không phải lúc nào cũng hoạt động. Dưới đây là một số ý tưởng để giải quyết trường hợp chung:

Chuyển đổi hiệu quả ngày giữa UTC và giờ địa phương (tức là. PST) trong SQL 2005



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bộ đệm ẩn đối tượng tạm thời của SQL Server

  2. Truy vấn được tham số hóa ..... yêu cầu tham số '@units', không được cung cấp

  3. Chúng ta có thể cài đặt phiên bản Express và phiên bản Chuẩn của SQL Server trên cùng một Người dùng PC không?

  4. Tương tự Mutex trong SQL?

  5. Cách bắt các ngoại lệ hết thời gian chờ của SQLServer