MySQL stöder ett stort antal datatyper, och det exakta antalet beror på hur du kategoriserar dem. Det finns inte ett enda definitivt nummer eftersom vissa är variationer av andra (t.ex. olika storlekar på heltal).
MySQL stöder emellertid i stort sett dessa kategorier av datatyper, med många undertyper inom varje:
* numeriska typer: Heltal (tinyint, smallint, mediumint, int, bigint), flytande punkt (float, dubbel, decimal), fast punkt (decimal).
* Datum och tidstyper: Datetime, datum, tid, tidsstämpel, år.
* Strängtyper: Char, varchar, text (tinytext, text, mediumtext, longtext), blob (tinyblob, blob, mediumblob, longblob), enum, set.
* rumsliga typer: Geometri, punkt, linestring, polygon, etc. (kräver rumsliga förlängningar)
* json -typ: Json
I stället för ett enda nummer är det därför mer exakt att säga att MySQL stöder dussintals av datatyper, som omfattar olika numeriska, sträng, datum/tid och rumsliga representationer.