Functies II

Rekenkundige functies

Je hebt een bestand opgeslagen ter groote van 16448344 bytes in de tabel bestand, nu wil je het bestand in zowel kilobytes als megabytes laten zien aan de

bezoeker van je website, Het veld formaat is een integer van in dit geval tenminste 7 tekens lang waarin de grootte van het bestand staat.

Hoeveel kilobytes is het bestand
"SELECT (formaat/POW(2,10)) AS size FROM bestand"

De functie POW(n,p) berekent het getal van n tot de macht van p, in dit geval is een kilobyte 2 tot de macht van 10 aan bytes, en wordt die onder de naam 'size' in het resultaat teruggegeven.

Voor megabytes welke een byte tot de macht 20 zijn doe je:
"SELECT (formaat/POW(2,20)) AS size FROM bestand"

In combinatie met die functie CONCAT en het toegevoegde veld `naam` kan je het volgende doen:

"SELECT CONCAT('Het bestand ', naam , ' is ', ROUND((formaat/POW(2,10)),0) , ' Kbyte of ' , ROUND((formaat/POW(2,20)),0), ' Mbyte') AS zin FROM bestand"


(formaat/POW(2,10) en (formaat/POW(2,20)
Rekenen het bestandsformaat in kilobytes en megabytes uit.

ROUND((formaat/POW(2,10)),0)
ROUND (n,d) rond het getal n af in het aantal decimalen d, in dit voorbeeld 0 dus.

CONCAT('Het bestand ', naam , ' is ', ROUND((formaat/POW(2,10)),0) , ' Kbyte of ' , ROUND((formaat/POW(2,20)),0), ' Mbyte') AS zin
CONCAT voegt vervolgens de uitgerekende groottes met de door mij toevoegde strings samen onder de noemer 'zin'

zin geeft nu "Het bestand picture.jpg is 16063 Kbyte of 16 Mbyte"

Meer numerische functies zijn te vinden op:
http://dev.mysql.com/doc/mysql/en/Numeric_Functions.html

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Rekenkundig I
  2. Rekenkundig II
  3. Functies I
  4. Functies II
  5. Overwegingen

PHP tutorial opties

 
 

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.