Ik wil alleen de tijd uit de kolom DateTime halen met behulp van een SQL-query
met SQL Server 2005 en 2008
Standaarduitvoer:
AttDate
==
2011-02-09 13:09:00
2011-02-09 14:10:00
Ik wil graag deze uitvoer:
AttDate Time
==
2011-02-09 13:09:00 13:09
2011-02-09 14:10:00 14:10
Antwoord 1, autoriteit 100%
SQL Server 2008:
SELECT cast(AttDate as time) [time]
FROM yourtable
Eerdere versies:
SELECT convert(char(5), AttDate, 108) [time]
FROM yourtable
Antwoord 2, autoriteit 10%
Ervan uitgaande dat SQL-server
SELECT CONVERT(VARCHAR(8),GETDATE(),108)
Antwoord 3, autoriteit 7%
SQL Server 2008+ heeft een “time” datatype
SELECT
..., CAST(MyDateTimeCol AS time)
FROM
...
Voor oudere versies, zondervarchar-conversies
SELECT
..., DATEADD(dd, DATEDIFF(dd, MyDateTimeCol, 0), MyDateTimeCol)
FROM
...
Antwoord 4, autoriteit 3%
De eenvoudigste manier om de tijd van datetime te krijgen zonder milliseconde stack is:
SELECT convert(time(0),getDate())
Antwoord 5, autoriteit 3%
Probeer dit te gebruiken
-
Datum tot tijd
select cast(getdate() as time(0))
-
Time to Tinytime
select cast(orig_time as time(0))
Antwoord 6
Probeer dit, het zal werken:
CONVERT(VARCHAR(8),DATETIME,114)
voor uw referentie .
Antwoord 7
Probeer dit:
select convert(nvarchar,CAST(getdate()as time),100)
Antwoord 8
Krijg de datum van de server
SELECT LTRIM(RIGHT(CONVERT(VARCHAR(20), GETDATE(), 100), 7)) FROM TABLENAME WHERE ...
of
Als het in de tabel
is opgeslagen
SELECT LTRIM(RIGHT(CONVERT(VARCHAR(20), datename, 100), 7)) FROM TABLENAME WHERE ...
Resultaat:
11:41 AM
Antwoord 9
select AttDate,convert(char(5), AttDate, 108) [Time] from yourTableName
Antwoord 10
select cast (as time(0))
zou een goede clausule zijn. Bijvoorbeeld:
(select cast(start_date as time(0))) AS 'START TIME'
Antwoord 11
Ik gebruik dit script vaak om tijd van datetime te krijgen:
SELECT CONVERT(VARCHAR(9),RIGHT(YOURCOLUMN_DATETIME,9),108) FROM YOURTABLE
Antwoord 12
Om de tijd van datetime te krijgen, kunnen we
gebruiken
SELECT CONVERT(VARCHAR(20), GETDATE(), 114)
Antwoord 13
Als u dateert Datum in deze stijl: 23 oktober 2013 10:30 AM
Gebruik dit
SELECT CONVERT(NVARCHAR(30),getdate(), 100)
convert()
methode duurt 3 parameters
- datatype
- kolom / waarde
- Stijl: beschikbare stijlen zijn van 100 tot 114. U kunt binnen het bereik kiezen van. Kies een voor één om het datumformaat te wijzigen.
Antwoord 14
op MSSQL2012 of hoger
cast(dateadd(ms,datediff(ms, [StartDateTime], [StopDateTime]),0) as Time(0))
… of …
convert(time(0),dateadd(ms,datediff(ms, [StartDateTime], [StopDateTime]),0) )
Antwoord 15
select convert(char(5), tbl_CustomerBooking.CheckInTime, 108) AS [time]
from tbl_CustomerBooking
Antwoord 16
SQL Server 2012:
Select TRY_CONVERT(TIME, myDateTimeColumn) from myTable;
persoonlijk, ik geef de voorkeur aan try_convert () om () te converteren. Het belangrijkste verschil: als cast mislukt, retourneert Try_Convert () null terwijl Converteren () een fout verhoogt.
Antwoord 17
U kunt dit gebruiken:
SELECT CONVERT(VARCHAR(5), GETDATE(),8)
Uitgang:
08:24
Antwoord 18
select substr(to_char(colUmn_name, 'DD/MM/RRRR HH:MM:SS'),11,19) from table_name;
Uitvoer: van
05:11:26
05:11:24
05:11:24