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

Chỉ lấy Ngày từ nhóm trong chọn từ cột DateTime trong SQL Server

Bạn có thể nhóm theo cái này:

cast(floor(cast(AutoShipItems.NextOrderDate as float)) as datetime)

Tôi đặt nó vào một hàm vô hướng do người dùng xác định để làm cho nó dễ dàng hơn:

create function [dbo].[xfn_TrimTimeFromDateTime]
(
    @date as datetime
)
returns datetime with schemabinding as
begin
    --- Convert to a float, and get the integer that represents it.
    --- And then convert back to datetime.
    return cast(floor(cast(@date as float)) as datetime)
end

Sau đó bạn sẽ gọi như thế này:

GROUP BY
    AutoShipItems.CustomerID, 
    dbo.xfn_TrimTimeFromDateTime(AutoShipItems.NextOrderDate), 
    Customer.FirstName, Customer.LastName, Customer.EmailAddress

Lưu ý rằng bạn có thể phải thay đổi các giá trị trong mệnh đề SELECT, vì hiện tại bạn đang nhóm theo một thứ gì đó khác.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để tách một chuỗi để tôi có thể truy cập mục x?

  2. Cần trợ giúp câu lệnh sql khó chịu

  3. Sử dụng PATINDEX để tìm các mẫu độ dài khác nhau trong T-SQL

  4. Có cách nào để vô hiệu hóa trình kích hoạt SQL Server chỉ cho một phạm vi thực thi cụ thể không?

  5. truy vấn sql để trả về sự khác biệt giữa hai bảng