Új hozzászólás Aktív témák
-
Jester01
veterán
válasz bbTamas77 #1853 üzenetére
A probléma az, hogy két időpont között ebben a formában lehet, hogy azonos eredményt kapsz amikor különböző időtartam volt valójában, hiszen az év illetve a hónapok hossza különbözhet.
Ha valami 1 hónapja volt, az függ attól az előző hónap milyen hosszú volt. Ha ez neked jó, akkor nincs gond.Jester
-
sztanozs
veterán
válasz bbTamas77 #1854 üzenetére
A definíció alapján ki tudod számítani a percet órát, napot, hónapot, évet...
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz bbTamas77 #1857 üzenetére
Mivé kellene a különbséget átalakítani - ezt nem értjük még mindig?
sec = unixtime % 60 as int
min = CAST((unixtime / 60) as int) % 60
hour = CAST((unixtime / 3600) as int) % 24
day = unixtime / 86400) as intEnnél hosszabbat csak a kiinduló dátum ismeretével lehet tudni a változó hosszúságú hónapok miatt.
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz bbTamas77 #1861 üzenetére
Alant írtam, hogy mért nem tudod
idődátum formátummá alakítani, de még egyszer kicsit részletesebben:
- Dátummá nem tudod alakítani, mert nincs értelme. Hogy néz ki, hogy két dátum között eltelt 1 év november 19-e? A dátum ugyanis dátumot jelől, nem időtartamot. Két dátum között simán eltelhet két hónap és harminc nap, de ez 'dátum' formátumban nem értelmezhető (február 30).
- MSSQL 2008-on pl már használható a datetimeoffset típus erre a célraJOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz bbTamas77 #1863 üzenetére
Itt írtam alant, hogy tudod kiszámolni.
Amúgy olyan sincs, hogy SQL... Milyen adatbázison szeretnéd megvalósíani?[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
DS39
nagyúr
válasz bbTamas77 #1863 üzenetére
dehogy nincs, Transact-SQL-ben a DATEDIFF fgv. ilyen. de az egy adott formátumban adja meg pl nap, vagy perc. teljes dátumba megadni nincs értelme, mert a hónapok nem azonos hosszúak, az évek sem.
hogy értsd: pl megadsz két dátumot, kijönne hogy különbség egy év, két hónap, 10 nap ... az a két hónap most hány nap is? tehát nem kapnál pontos értéket.
[ Szerkesztve ]
-
Jester01
veterán
válasz bbTamas77 #1863 üzenetére
Fentiek alapján nap-óra-perc-másodperc például imígyen megkapható:
SELECT CONCAT((UNIX_TIMESTAMP('2013-12-24 18:00') - UNIX_TIMESTAMP('2013-08-01 18:49')) DIV 86400, ' ',
SEC_TO_TIME((UNIX_TIMESTAMP('2013-12-24 18:00') - UNIX_TIMESTAMP('2013-08-01 18:49')) % 86400))Kicsit csúnya, hogy kétszer kell benne elvégezni a kivonást de a SEC_TO_TIME az csak korlátozott különbséget tud egyébként kezelni. A DATEDIFF pedig buta mert az idő részt figyelmen kívül hagyja.
[ Szerkesztve ]
Jester
Új hozzászólás Aktív témák
- Azonnali VGA-s kérdések órája
- Opel topik
- Bestbuy játékok
- Soundbar, soundplate, hangprojektor
- Fűnyíró topik
- ZTE Blade A34 - nem a legélesebb kés a fiókban
- Szeged és környéke adok-veszek-beszélgetek
- bb0t: Gyilkos szénhidrátok, avagy hogyan fogytam önsanyargatás nélkül 16 kg-ot
- Akvarisztika
- OLED TV topic
- További aktív témák...
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest