it-swarm.com.de

Wie konvertiere ich das Datumsformat des Systems nach TT/MM/JJ in SQL Server 2008 R2?

Ich verwende SQL Server 2008 R2. Ich möchte das Systemdatum in dieses Format konvertieren: dd/mm/yy

"2013-01-01 00:00:00.000" to "Score Calculation - 10/01/13".

Meine Spalte enthält die Daten:

1. DMS01A13010101
2. RMS01A13010201
3. 44
4. 2013-01-01 00:00:00.000

Was ich möchte: Wenn der Datensatz 2013-01-01 00:00:00.000 in diesem Format hat, wechsle nur ich zu Score Caculation - dd/mm/yy.

Mein Code ist,

select 
   case 
      when (CHARINDEX(D30.SPGD30_TRACKED_ADJUSTMENT_X, '-*') > 0 or 
            CHARINDEX(D30.SPGD30_TRACKED_ADJUSTMENT_X, '*-') > 0) 
      then 'Score Calculation - ' + CONVERT(VARCHAR(8), D30.SPGD30_TRACKED_ADJUSTMENT_X, 1) 
    end checkthedate 
from 
    CSPGD30_TRACKING D30
   SELECT CONVERT(varchar(11),getdate(),101)  -- mm/dd/yyyy

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

Überprüfen Sie dies . Ich gehe davon aus, dass D30.SPGD30_TRACKED_ADJUSTMENT_X vom Datetime-Datentyp ist.
Deshalb benutze ich CAST() function, um ihn als Zeichenausdruck zu machen, da CHARINDEX() mit dem Zeichenausdruck arbeitet.
Ich denke auch, dass es keine Notwendigkeit für OR Bedingung gibt.

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

BEARBEITEN:

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

Siehe diesen Link für die Konvertierung in andere Datumsformate: https://www.w3schools.com/sql/func_sqlserver_convert.asp

14
Mudassir Hasan

Die folgende Abfrage führt zum dd/mm/yy-Format.

select  LEFT(convert(varchar(10), @date, 103),6) + Right(Year(@date)+ 1,2)
2
John Woo

Versuche dies

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

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

Weitere Informationen finden Sie hier: https://msdn.Microsoft.com/de-de/library/ms187928.aspx

1

Die folgende Abfrage führt zum Format dd-mmm-yy.

select 
cast(DAY(getdate()) as varchar)+'-'+left(DATEname(m,getdate()),3)+'-'+  
Right(Year(getdate()),2)
0
Dipin C.K
select convert(varchar(8), getdate(), 3)

verwenden Sie dies einfach für TT/MM/JJ und das 

select convert(varchar(8), getdate(), 1) 

für mm/tt/jj

0
Palash