2016-05-12 1 views
3

Je suis très nouveau à USQL et je me demande comment transformer un "datetime" en "date" dans une instruction select. Aussi, comment puis-je me débarrasser de la milliseconde et am/pm? J'apprécierais vraiment toute aide à ce sujet. Merci à tous.Conversion de type en U-SQL

Répondre

1

Vous pouvez utiliser C# en ligne pour ce faire.

@rowset = SELECT dateTimeColumn.Date AS dateOnly FROM @anotherrowset; 

Pour vous débarrasser des valeurs, vous pouvez utiliser la dateTime.ToString (format), par ex. dateTime.ToString ("mm/jj/aa hh: mm)

+0

Aucun travail. – enufeffizy

+0

D'autres suggestions? – enufeffizy

0

Intéressant, je ne pouvais pas obtenir le .Date de travail non plus, se penchera sur elle.En attendant, en utilisant le .ToShortDateString() fonctionne. ToString fonctionne aussi bien

Code Ex

@datetime = 
SELECT * 
FROM(
    VALUES 
    (
     DateTime.Now 
    ), 
    (
     new DateTime(2016, 05,31) 
    ), 
    (
     new DateTime(2015, 01, 01) 
    )) AS v(datevalue); 


OUTPUT @datetime 
TO "/output/datetime.txt" 
USING Outputters.Text(); 

@date = 
    SELECT datevalue.ToShortDateString() AS date 
    FROM @datetime; 

OUTPUT @date 
TO "/output/date.txt" 
USING Outputters.Text(); 

Autre:..

@date = 
SELECT datevalue.ToString("MM-dd-yyyy") AS date 
FROM @datetime; 
1

Ci-dessous est le code qui works.Notice la parenthèse

@date = 
SELECT (datevalue).ToString("MM-dd-yyyy") AS date 
FROM @datetime; 
+0

Intéressant, quel était le nom de votre variable? –