resultaat twee datumvelden opslaan in veld

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Peter van Kroonenbur

Peter van Kroonenbur

17/10/2009 17:50:00
Quote Anchor link
Ik kom niet uit het volgende probleem;
Ik heb in de database 2 datum velden. Ik wil in een derde veld het resultaat zetten van het verschil van die 2 data.

datum_eind-datum_begin=dagen

Met een update query heb ik diverse syntax al geprobeerd.
Heeft iemand misschien een voorbeeld of kan mij op weg helpen?
Thanx Peter
 
PHP hulp

PHP hulp

23/12/2024 13:45:23
 

17/10/2009 17:53:00
Quote Anchor link
Waarom wil je het opslaan?
 
Roel -

Roel -

17/10/2009 17:55:00
Quote Anchor link
Met PHP en strtotime() kun je dit zo berekenen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo floor(strtotime($row['datum_begin']) - strtotime($row['datum_eind']) / 86400);
?>
 

17/10/2009 17:58:00
Quote Anchor link
Nee, SQL heeft daarvoor gewoon functie's:
mysql date functions of sql date functions.
Maar waarom wil je het opslaan?
 
Peter van Kroonenbur

Peter van Kroonenbur

17/10/2009 19:08:00
Quote Anchor link
Het berekeken was me al gelukt. Ik wil het gebruiken in een applicatie waar uitkeringen in worden berekend.
Er worden door een gebruiker dus een aantal perioden ingevoerd. Met het aantal dagen dat is ingevoerd moet dan verder gerekend worden. BV aantal dagen van een maand gedeeld door de periode van de uitkering etc.
Ik wil daarom de resultaten waarmee gerekend is vastleggen in een veld in de database.
Peter
 
Jan Koehoorn

Jan Koehoorn

17/10/2009 19:11:00
Quote Anchor link
Het resultaat van een berekening sla je in principe niet op in een database, omdat je het gewoon uit kunt rekenen. Uitzonderingen zijn er wel, bijvoorbeeld als je de prijs van een aantal producten op een factuur moet zetten, en het totaal moet berekenen. Die prijs kan later namelijk veranderen, en dan klopt je boekhouding niet meer.

Is dit in jouw geval ook aan de hand? Want dat verschil tussen twee datums kun je altijd opnieuw berekenen natuurlijk.
 
Peter van Kroonenbur

Peter van Kroonenbur

17/10/2009 19:16:00
Quote Anchor link
In mijn geval moet na de hele berekening een overzicht voor de klant worden geprint zodat hij het eventueel na kan rekenen.
Maar ik meende dat ik sowieso een resultaat in een ander veld moet kunnen opslaan en dat lukt me dus niet.
 
Jan Koehoorn

Jan Koehoorn

17/10/2009 19:35:00
Quote Anchor link
Een resultaat in een ander veld opslaan doe je zo:

UPDATE tabelnaam
SET veld3 = veld2 + veld1

Edit: even getest met een echte tabel, en dit werkt (als je het verschil in dagen wilt weten):

UPDATE datums
SET dagen_verschil = datum2 - datum1
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
 
Peter van Kroonenbur

Peter van Kroonenbur

17/10/2009 19:55:00
Quote Anchor link
Klopt, ik heb het mezelf veel te moeilijk gemaakt met het omrekenen. Ik ging er vanuit dat ik het resultaat van 2 datumvelden niet in een numeriek veld kon opslaan maar het gaat dus wel.
Heeft me veel tijd gekost maar met met jullie hulp ben ik eruit.
Dank daarvoor.
Peter
 



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.