sql >> Databasteknik >  >> RDS >> Sqlserver

Hur konverterar man systemets datumformat till dd/mm/åå i SQL Server 2008 R2?

   SELECT CONVERT(varchar(11),getdate(),101)  -- mm/dd/yyyy

   SELECT CONVERT(varchar(11),getdate(),103)  -- dd/mm/yyyy

Kolla här . Jag antar att D30.SPGD30_TRACKED_ADJUSTMENT_X är av datetime-datatypen .
Det är därför jag använder CAST() funktion för att göra det som ett teckenuttryck eftersom CHARINDEX() fungerar på karaktärsuttryck.
Också jag tror att det inte finns något behov av ELLER-villkor.

select case when CHARINDEX('-',cast(D30.SPGD30_TRACKED_ADJUSTMENT_X as varchar )) > 0 

then 'Score Calculation - '+CONVERT(VARCHAR(11), D30.SPGD30_TRACKED_ADJUSTMENT_X, 103)
end

EDIT:

select case when CHARINDEX('-',D30.SPGD30_TRACKED_ADJUSTMENT_X) > 0 
then 'Score Calculation - '+
CONVERT( VARCHAR(11), CAST(D30.SPGD30_TRACKED_ADJUSTMENT_X as DATETIME) , 103)
end

Se denna länk för konvertering till andra datumformat:https://www.w3schools.com/sql /func_sqlserver_convert.asp



  1. Enkelt gilla/ogilla betygssystem i php och MySQL

  2. Testa en Entity Framework-databasanslutning

  3. Förvirrad om UPDLOCK, HOLDLOCK

  4. Hur du skyddar din MySQL- eller MariaDB-databas från SQL-injektion:Del ett