sql >> Database teknologi >  >> RDS >> Mysql

MySQL hvordan man konverterer decimalværdi til grad, minut, sekund

Sådan gør du,

  • Hele graderenhederne forbliver de samme (dvs. i 121.135° længdegrad, start med 121°).
  • Multiplicer decimalen med 60 (dvs. 0,135 * 60 =8,1).
  • Det hele tal bliver minutterne (8').
  • Tag den resterende decimal og gang med 60. (dvs. .1 * 60 =6).
  • Det resulterende tal bliver sekunderne (6"). Sekunder kan forblive som en decimal.
  • Tag dine tre sæt tal og sæt dem sammen ved hjælp af symbolerne for grader (°), minutter (‘) og sekunder (") (dvs. 121°8'6" længdegrad)

Forespørgsel,

SET @deci = 123.77;
SELECT FLOOR(@deci) Degrees,

       FLOOR((@deci - (FLOOR(@deci))) * 60) Minutes,

       ((@deci - (FLOOR(@deci))) * 60 -
       FLOOR((@deci - (FLOOR(@deci))) * 60)) * 60 SECONDS

SQLFIDDLE DEMO

Onlinekonverteringsværktøj (til kontrol)



  1. bruge en database til logning

  2. MySQL VS Postgres/POSTGIS rumlige databaseunderstøttelse

  3. Sådan returneres en liste over gyldige tidszoner i Oracle-databasen

  4. php mysql-funktion med valgfri parameter