it-swarm.com.de

So wählen Sie ein Datum ohne Uhrzeit in SQL aus

Wenn ich ein Datum in SQL auswähle, wird es als 2011-02-25 21:17:33.933 zurückgegeben. Ich brauche aber nur den Date-Teil, also 2011-02-25. Wie kann ich das machen?

218
Neeraj

Ich denke, er will eine Schnur

select convert(varchar(10), '2011-02-25 21:17:33.933', 120)
129
bernd_k

Für SQL Server 2008:

Convert(date, getdate())  

Weitere Informationen hierzu finden Sie unter https://docs.Microsoft.com/de-de/sql/t-sql/functions/getdate-transact-sql

437
Prad9

Der schnellste ist datediff , z.

select dateadd(d, datediff(d,0, [datecolumn]), 0), other..
from tbl

Wenn Sie jedoch nur den Wert verwenden müssen, können Sie die Datendatei überspringen, z.

select ...
WHERE somedate <= datediff(d, 0, getdate())

wobei der Ausdruck datediff(d, 0, getdate()) ausreicht, um das heutige Datum ohne Zeitabschnitt zurückzugeben.

52
RichardTheKiwi

Verwenden Sie CAST (GETDATE () als Datum), das für mich einfach funktioniert hat.

33
Anna-leny
21
Orbit

sie können so verwenden 

SELECT Convert(varchar(10), GETDATE(),120) 
12
A.Goutam

Für 2008 ältere Version:

SELECT DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 0)

10
Domcha

Sie können dieses auch versuchen.

SELECT CONVERT(DATE, GETDATE(), 120)
2
Ram Pratap

Es ist etwas spät, aber verwenden Sie die Funktion ODBC "curdate" (spitze Klammern 'fn' ist die Escape-Sequenz der Funktion ODBC).

SELECT {fn curdate()} 

Ausgabe: 2013-02-01

2
Stefan Steiger

Konvertieren Sie es nach der Konvertierung in Datum zurück in Datumszeit, um bei Bedarf dieselbe Datumszeit beizubehalten

select Convert(datetime, Convert(date, getdate())  )
1
RollRoll

Verwendung ist einfach:

convert(date, Btch_Time)

Beispiel unten:

Tabelle:

Efft_d       Loan_I  Loan_Purp_Type_C   Orig_LTV    Curr_LTV    Schd_LTV    Un_drwn_Bal_a      Btch_Time            Strm_I  Btch_Ins_I
2014-05-31  200312500   HL03             NULL         1.0000    1.0000         1.0000      2014-06-17 11:10:57.330  1005    24851e0a-53983699-14b4-69109


Select * from helios.dbo.CBA_SRD_Loan where Loan_I in ('200312500') and convert(date, Btch_Time) = '2014-06-17'
1
Arvind Kumar

Wenn Sie einen Datumstyp als Datum zurückgeben möchten, verwenden Sie ihn

CONVERT(date, SYSDATETIME())

oder 

SELECT CONVERT(date,SYSDATETIME()) 

oder

DECLARE @DateOnly Datetime
SET @DateOnly=CONVERT(date,SYSDATETIME())
0
TMP ByKIS

In PLSQL können Sie verwenden

to_char(SYSDATE,'dd/mm/yyyy')
0
Morterox

Falls Sie die Zeit brauchen, um Nullen zu sein:

SELECT CONVERT(DATETIME, CONVERT(DATE, GETDATE()), 120)

0
Simon Alphonse

SELECT Datum ('2011-02-25 21: 17: 33.933') als Datum gibt uns 2011-02-25.

Arbeitete für mich. Hoffe, es funktioniert.

0
Mazhar Ghulam

Wandeln Sie zuerst das Datum in Float um (wobei die Zahl angezeigt wird), dann ROUND die Zahl in 0 Dezimalpunkte und konvertieren Sie diese in Datum/Uhrzeit.

convert(datetime,round(convert(float,orderdate,101),0) ,101)
0
user4162468

Versuche dies.

SELECT DATEADD(DD, 0, DATEDIFF(DD, 0, GETDATE()))
0
Ram Pratap