SQL tutorials:
-----------
Tutorial MySQL SQL, rekenfuncties

Inhoud
Intro
Functies
Rekenfuncties
-ABS
-ACOS
-ASIN
-ATAN
-CEILING
-COS
-COT
-CRC32
-DEGREES
-EXP
-FLOOR
-LOG
-LOG2
-LOG10
-MOD
-PI
-POWER
-POW
-RADIANS
-RAND
-ROUND
-SIGN
-SIN
-SQRT
-TAN
-TRUNCATE

Intro

Alvorens te beginnen aan deze tutorial wordt geadviseerd om eerst de tutorial Tutorial ANSI SQL-92 te lezen.

Deze SQL tutorial gaat over rekenfuncties (numerieke functies), gespecificeerd op het gebruik van een MySQL database. De functies die hieronder worden beschreven kunnen ook werken op databases anders dan MySQL, maar niet persé. Sommige functies, zoals deze te gebruiken zijn in MySQL wijken af van de ANSI standaard. De voorkeur gaat uit naar de functies die volgens de ANSI norm te gebruiken zijn. Bij iedere functie staat of deze functie aan de ANSI SQL-92 norm voldoet middels : ANSI SQL-92

De gebruikte SQL query's zijn getest op een MySQL database, versie 3.23.58, versie 4.1.11 en versie 5.0.18-nt. Eventuele opmerkingen over verschillen in deze versie staan bij de uitgevoerde SQL query's.

Als je wilt zoeken in deze tutorial dan kan dat met behulp van CTRL F.

naar boven

Functies

De taal SQL kent verscheidene functies die gebruikt kunnen worden om de data in de database te manipuleren. Het aanroepen van functies in SQL lijkt op het aanroepen van functies in programmeertalen zoals C++, PHP en JavaScript. Eerst komt de functienaam, gevolgd door een haakje openen, parameters, haakje sluiten, oftewel:

functie(parameters)

Let op dat er geen spatie zit tussen de functie en het haakje openen. Dit is dus fout:

functie (par) : fout

Wat wel is toegestaan is dat functie parameters omgeven worden door spaties. Dit is dus allebei goed:

functie(par1,par2) : goed
functie( par1 , par2 ) : goed

De meeste functies kunnen gebruikt worden in zowel het SELECT gedeelte van de SQL query als in de WHERE van de query.

SELECT functie(kolomnaam)
FROM tabel ;


SELECT *
FROM tabel
WHERE functie(kolomnaam) = 'uitkomst' ;


naar boven

Reken functies

MySQL kent vele reken functies (ook wel numerieke functies genoemd). Deze functies kunnen rekenen met velden van het type INT, TINYINT, SMALLINT, MEDIUMINT, BIGINT, FLOAT, DOUBLE, DECIMAL en zelf opgegeven getallen. Deze kolomtypes worden hier verder niet uitgewerkt. Als er bij het berekenen een fout optreed dan zal MySQL NULL retourneren. Als er bijvoorbeeld waarden aan een parameter (ook wel argument genoemd) worden toegekend die ongeldig zijn dan geeft de functie ook NULL terug. De functies hieronder staan in alfabetische volgorde. De meeste van deze rekenkundige functies hebben betrekking op (geavanceerde) wiskunde en goniometrie. Een uitleg over de wiskunde zul je hier niet aantreffen slechts een oppervlakkige uitleg van de functie zoals deze te gebruiken is in MySQL.


-----------

Ik hoop dat jullie er wat van geleerd hebben. Mocht je fouten tegenkomen (nobody's perfect) laat me dit dan s.v.p. weten op donny at semeleer dot nl . Uiteraard zijn op- en aanmerkingen ook van harte welkom!
De string-, aggegrate, datum- en tijdfuncties van MySQL worden in een aparte tutorial besproken.

-----------


-----------

Overige SQL tutorials:


-----------
Interessante links:

-----------

Naslagwerken gebruikt voor deze tutorial:

SQL voor MySQL ontwikkelaars door Rick f. van der Lans, ISBN 978 90 12 12150 7

Websites gebruikt voor deze tutorial:

http://www.mysql.com
http://developer.mimer.se/validator/parser92/index.tml
http://www.w3schools.com/sql/sql_intro.asp
http://www.phpfreakz.nl

-----------

Deze tutorial is gemaakt door Donny Semeleer (Donny_nl). Niets van deze tutorial mag gebruikt worden zonder schriftelijke toestemming van de maker. De gebruikte gegevens zijn fictieve gegevens. Copyright 2005-2010 D. Semeleer. Laatste geupdate op 17 september 2006.

 Valid HTML 4.01! Valid CSS!