2012-09-17 4 views
1

i ont cette instruction SQL que je veux combiner « date » et « dayOfWeek » Colonnecomment combiner deux colonnes de données?

SELECT CONVERT(date,startTimeStamp) AS DATE 
     , datename(dw,CONVERT(date,startTimeStamp)) as dayOfWeek 
     ,CONVERT(time,[startTimeStamp])AS StartTime 
     ,CONVERT(time,[endTimeStamp])AS EndTime 
     ,DATEDIFF(HH,[startTimeStamp] ,[endTimeStamp]) 
    FROM [TaskManagementSystem_DB].[dbo].[Timesheet_entry] 
+1

les combiner comment? dans la même colonne? – Taryn

+0

Vous pouvez les 'CONCATENER' après les avoir convertis/transtypés en chaînes. – Kermit

+0

Qu'est-ce que vous voulez combiner dans les deux colonnes et à quoi doit ressembler le résultat final? – Jim

Répondre

2

Sons comme vous voulez ceci:

SELECT CONVERT(date,startTimeStamp) AS DATE 
     , datename(dw,CONVERT(date,startTimeStamp)) as dayOfWeek 
     ,cast(datename(dw,CONVERT(date, startTimeStamp)) as varchar(50)) -- add this 
     + ' ' +              -- add this 
     CONVERT(varchar(50),CONVERT(date,startTimeStamp)) FullDate -- add this 
     ,CONVERT(time,[startTimeStamp])AS StartTime 
     ,CONVERT(time,[endTimeStamp])AS EndTime 
     ,DATEDIFF(HH,[startTimeStamp] ,[endTimeStamp]) 
    FROM [TaskManagementSystem_DB].[dbo].[Timesheet_entry] 

Pour concaténer les champs, vous devez les cast() à la même type de données, semblable à ceci:

select cast(datename(dw,CONVERT(date, getdate())) as varchar(50)) 
    + ' ' + 
    CONVERT(varchar(50) ,getdate()) newdate 

voir SQL Fiddle with Demo

Questions connexes