Ga naar MySQL-referentie - 10.5. Opslagvereisten voor gegevenstype
Zoeken naar:Opslagvereisten voor datum- en tijdtypes
Datums worden intern opgeslagen als A three-byte integer packed as DD + MM×32 + YYYY×16×32
Maar als u een datumkolom selecteert voor weergave , het moet getoond worden in sommige manier, dus het komt eruit als 0000-00-00. Het is niet opgeslagen als een char (10) met dat specifieke formaat.
Als u voor weergave een specifiek formaat moet zien, kunt u het converteren naar VARCHAR in een specifiek formaat met behulp van Date_Format() . Houd er echter rekening mee dat als u de query in een programmeertool gebruikt, dit niet is wat jij wilt doen. U wilt de onbewerkte datumwaarde , voor weergavedoeleinden zal er een vergelijkbare opmaakfunctie zijn vanuit elke programmeeromgeving die u gebruikt.
Zoals je kunt zien aan de referentie in DATE_FORMAT, wil je '%d-%m-%Y'
gebruiken , bijv.
SELECT col1, col2, DATE_FORMAT(datecolumn, '%d-%m-%Y') AS datecolumn, more1...
FROM sometable
....