Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL comment convertir une valeur décimale en degré, minute, seconde

Voici comment,

  • Les unités entières de degrés resteront les mêmes (c'est-à-dire dans 121,135 ° de longitude, commencez par 121 °).
  • Multipliez le nombre décimal par 60 (c'est-à-dire 0,135 x 60 =8,1).
  • Le nombre entier devient les minutes (8').
  • Prenez la décimale restante et multipliez par 60. (c'est-à-dire 0,1 * 60 =6).
  • Le nombre résultant devient les secondes (6"). Les secondes peuvent rester sous forme décimale.
  • Prenez vos trois ensembles de nombres et assemblez-les en utilisant les symboles des degrés (°), des minutes (') et des secondes ("") (c'est-à-dire 121°8'6" de longitude)

Requête,

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

DÉMO SQLFIDDLE

Outil de conversion en ligne (pour vérification)