Vinnaren i pepparkakshustävlingen!
2013-04-13, 14:46
  #1
Medlem
Någon som kan hjälpa mig att få till formateringen så här t.ex. 4h 23m

DECLARE
@Now as datetime,
@StartTime as datetime
SET @Now = GETDATE()
SET @StartTime = '2013-04-13 09:17:46.440'

Select
'Tid' = ....'Xh XXm'

Omständigt? Javisst
Citera
2013-04-13, 14:59
  #2
Medlem
Du får köra med någon typ av formattering.
Vet inte vilket pgm-språk du håller på med, men
det borde bli något typ:

formatkommando("%Hh %Mm")
Citera
2013-04-13, 16:14
  #3
Medlem
Citat:
Ursprungligen postat av zal_zal
Du får köra med någon typ av formattering.
Vet inte vilket pgm-språk du håller på med, men
det borde bli något typ:

formatkommando("%Hh %Mm")

Du skojar va?
Hursomhelst bra fråga, SQL server 2008
Citera
2013-04-13, 18:51
  #4
Moderator
Protons avatar
Citat:
Ursprungligen postat av Gislo
Du skojar va?
Hursomhelst bra fråga, SQL server 2008
Vad är det för nåt du vill göra egentligen?

Är det att ta ut differensen mellan 2 tidpunkter, eller är det nåt annat? Ditt kodexempel sa inte speciellt mycket ärligt talat, så du får nog försöka förklara bättre.
Citera
2013-04-14, 00:27
  #5
Medlem
Citat:
Ursprungligen postat av Proton
Vad är det för nåt du vill göra egentligen?

Är det att ta ut differensen mellan 2 tidpunkter, eller är det nåt annat? Ditt kodexempel sa inte speciellt mycket ärligt talat, så du får nog försöka förklara bättre.

Tack bägge för visat intresse, har lyckats lösa det.

Det jag ville var att mäta tiden mellan två tillfällen och presentera resultatet i formatet "12h 45m", och i vissa fall då även "12d 14h 26m".

Kan posta lösningen senare ifall någon söker liknanade, sängen nu.
Citera
2013-04-14, 10:58
  #6
Moderator
Protons avatar
Citat:
Ursprungligen postat av Gislo
Tack bägge för visat intresse, har lyckats lösa det.

Det jag ville var att mäta tiden mellan två tillfällen och presentera resultatet i formatet "12h 45m", och i vissa fall då även "12d 14h 26m".

Kan posta lösningen senare ifall någon söker liknanade, sängen nu.
Gissningsvis har du använt DATEDIFF, men det vore kul om du kunde posta exempel på vad du använder för indata och hur den slutliga lösningen såg ut.
Citera
2013-04-14, 16:43
  #7
Medlem
Citat:
Ursprungligen postat av Proton
Gissningsvis har du använt DATEDIFF, men det vore kul om du kunde posta exempel på vad du använder för indata och hur den slutliga lösningen såg ut.

Här kommer ett exempel.
DECLARE
@Startdatum datetime
,@Slutdatum datetime
SET @startdatum = '2013-04-14 08:22:00.000'
SET @slutdatum = '2013-04-14 16:16:23.000'
SELECT
CAST(DateDiff(dd, @Startdatum ,@slutdatum) as varchar) + 'd ' +
CAST(DateDiff(hh, @Startdatum ,@slutdatum) % 24 as varchar) + 'h ' +
CAST(DateDiff(mi, @Startdatum ,@slutdatum) % 60 As varchar) + 'm'
--Ger: 0d 8h 54m

Sen kollar jag innan ifall det är över 1 dag, då tar jag med dagar, annars bara timmar och minuter.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback