wat te gebruiken: TIMEDIFF of een getal met 8 decimalen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Maarten Slenter

Maarten Slenter

05/03/2007 21:02:00
Quote Anchor link
1. het spijt me als de titel wat onduidelijk is, ik weet niet hoe ik het moet uitleggen

maar goed, ontopic:

ik wil een online spel gaan maken, maar nu zit ik met de grondstoffen. Ik moet er dus voor zorgen dat je iedere seconde genoeg erbij krijgt van de betreffende grondstof. Maar mijn vriend en ik vroegen ons af wat ik beter kan gebruiken:

1. een record waarin ik per seconde een getal van ong 8 decimalen bij tel, en dus in de database zet

of

2. ik neem de tijd die het duurt voordat er 1 bij komt, en vergelijk deze met de functie TIMEDIFF.

mij lijkt de 2de wat onhandig, omdat de tijd af en toe wat moeilijk te delen is enzo

welk idee vinden jullie het beste, of hebben jullie een ander idee?
 
PHP hulp

PHP hulp

24/11/2024 19:15:28
 
Frank -

Frank -

05/03/2007 21:05:00
Quote Anchor link
Kortom, de vraag is of je het wiel opnieuw wilt gaan uitvinden of dat je een kant en klare functie wilt gaan gebruiken.

En waarom zou het onhandig zijn om een bewezen functie te gebruiken? Leg dat eens uit.
 
Maarten Slenter

Maarten Slenter

05/03/2007 21:18:00
Quote Anchor link
1. ik snap die functie niet helemaal...

2. het mij nogal moeilijk lijkt om met tijd te rekenen. en omdat TIMEDIFF altijd met dezelfde 'soort' tijd moet rekenen, moet ik daar ook nog eens aan denken...
 
Danny K

Danny K

05/03/2007 21:32:00
Quote Anchor link
1.) Dan moet je daar even 5 minuten instoppen.. Dan "snap" je het waarschijnlijk wel..
2.) Als je iets moeilijk vindt leer je er alleen maar van..
 
Frank -

Frank -

05/03/2007 21:38:00
Quote Anchor link
Quote:
TIMEDIFF(expr1,expr2)

TIMEDIFF() returns expr1 – expr2 expressed as a time value. expr1 and expr2 are time or date-and-time expressions, but both must be of the same type.

mysql> SELECT TIMEDIFF('2000:01:01 00:00:00',
-> '2000:01:01 00:00:00.000001');
-> '-00:00:00.000001'
mysql> SELECT TIMEDIFF('1997-12-31 23:59:59.000001',
-> '1997-12-30 01:01:01.000002');
-> '46:58:57.999999'
Wat snap je daar niet aan? Je stop 2x een tijd of datum met tijd (= 1 soort) als input in de functie en er komt 1 resultaat uit.

Met de functie NOW() heb je iedere keer bv. al de datum en tijd van het heden te pakken, de andere tijd die jij nodig hebt, is dus een datum mét tijd van de vorige update. Wanneer je die keurig als DATETIME hebt opgeslagen, is dit dus eenvoudig uit te rekenen.
 
Toine vd P

Toine vd P

05/03/2007 21:59:00
Quote Anchor link
het zijn tog 11 decimalen ?
 
Maarten Slenter

Maarten Slenter

06/03/2007 06:38:00
Quote Anchor link
en de query geeft het verschil terug? want dat heb ik ook eigenlijk nooit begrepen...
 
Terence Hersbach

Terence Hersbach

06/03/2007 06:43:00
Quote Anchor link
Het resultaat van de query geeft terug wat jij wilt, dus daar kan je oa ook het verschil mee terug laten geven..
 
Maarten Slenter

Maarten Slenter

06/03/2007 06:51:00
Quote Anchor link
ok, bedankt. ik zal het hier dan maar eens mee proberen...
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.