sql >> Databáze >  >> RDS >> Sqlserver

Získejte pouze datum ze seskupení ve vybraném sloupci DateTime na serveru SQL Server

Můžete seskupit podle tohoto:

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

Vložil jsem to do skalární uživatelsky definované funkce, aby to bylo jednodušší:

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

Což byste pak nazvali takto:

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

Všimněte si, že možná budete muset změnit hodnoty v klauzuli SELECT, protože nyní seskupujete podle něčeho jiného.



  1. Jak napsat skript pro vložení Oracle s jedním polem jako CLOB?

  2. Získat název sloupce místo hodnoty sloupce

  3. koncové nuly nejdou do databáze

  4. Magento Získejte SOUČET celkových objednávek mezi nastavenými daty