IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes PostgreSQL Discussion :

conversion de données


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    677
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 677
    Points : 160
    Points
    160
    Par défaut conversion de données
    Bonjour,

    J'ai un champ intitulé ville_lati_dms de type integer et qui correspond à la latitude en degré, minutes et secondes d'une ville .

    Par exemple pour Dunkerque j'ai cette donnée : 510216 soit 51 ° 02 ' 16''

    Je dois transformer cette donnée en degrés décimaux.

    Pour cela je dois appliquer cette formule :

    degré (décimaux) = degré + minutes/60 + secondes/3600 = 51 + 02/60 + 16/3600

    Comment puis-je faire pour extraire les degrés, minutes, secondes de ma donnée en base pour appliquer cette formule ?

    Cordialement

  2. #2
    Membre éprouvé Avatar de Oishiiii
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    508
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 508
    Points : 1 104
    Points
    1 104
    Par défaut
    Bonsoir,

    Essayez ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    WITH t(lat) AS (
      SELECT 510216
    )
    SELECT 
      CAST(SUBSTRING(CAST(lat AS varchar) FROM 1 FOR 2) AS real) +
      CAST(SUBSTRING(CAST(lat AS varchar) FROM 3 FOR 2) AS real)/60 +
      CAST(SUBSTRING(CAST(lat AS varchar) FROM 5 FOR 2) AS real)/36000
    FROM t
    Vous pouvez en faire une fonction.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    677
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 677
    Points : 160
    Points
    160
    Par défaut
    Bonsoir et merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Conversion de donnée
    Par elfyx dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/02/2007, 08h48
  2. Conversion de données
    Par noratec dans le forum Access
    Réponses: 3
    Dernier message: 17/03/2006, 17h50
  3. Conversion de données
    Par charliejo dans le forum C++Builder
    Réponses: 3
    Dernier message: 31/01/2006, 09h59
  4. Pb de conversion de données 16 vers 32
    Par Ducmonster dans le forum Langage
    Réponses: 2
    Dernier message: 09/10/2005, 11h53
  5. [JSTL] [SQL] Conversion de données
    Par GiHe dans le forum Taglibs
    Réponses: 4
    Dernier message: 27/09/2005, 10h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo