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

SQL Oracle Discussion :

MAJ champs date


Sujet :

SQL Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 34
    Points : 24
    Points
    24
    Par défaut MAJ champs date
    Bonjour à tous,

    Étant novice sur oracle je me permet d'ouvrir un post sur votre forum car je suis bloqué.

    Contexte:
    J'ai une table toto (original) avec différents champ dont 1 qui est de type date.
    ex:

    select * from toto order by id desc ;

    ID titi_id Date_position
    1 39928 11/12/17 10:46:01
    2 39928 11/12/17 10:47:01
    3 14122 11/12/17 10:45:00
    .....
    .....
    .....


    J'aimerai pouvoir mettre à jour tout les champs date de la colonne Date_position avec -7 heures de la date actuelle. Sachant que pour faire cela sur 1 champs je n'ai pas de soucis mais j'ai plus de 2000 enregistrements à MAJ et là .... c'est le drame ..

    Merci pour vos retours. N'hésitez pas si jamais vous avec besoin d'infos supplémentaire.

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Sr. Specialist Solutions Architect @Databricks
    Inscrit en
    Septembre 2008
    Messages
    8 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Sr. Specialist Solutions Architect @Databricks
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 453
    Points : 18 388
    Points
    18 388
    Par défaut
    Vous avez deux solutions.
    La première, historique, consiste à savoir que la représentation interne du type DATE dans Oracle est en réalité un nombre dont l'unité est le jour.
    Dès lors, on écrirait votre requête ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    update toto
        set Date_position = Date_position - 7/24;
    La seconde, plus moderne, utilise les intervalles.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    update toto
        set Date_position = Date_position - interval '7' hour;

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 34
    Points : 24
    Points
    24
    Par défaut
    Bonjour Waldar,

    Top ! La seconde solution est parfait ! Si simple quand on a la solution devant les yeux et si compliqué quand on chercher.....

    Merci à toi

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

Discussions similaires

  1. MAJ d'un champ Date
    Par HENRYC dans le forum C#
    Réponses: 5
    Dernier message: 11/09/2007, 10h22
  2. formater un champ date dans un select
    Par sbeu dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 24/04/2006, 16h44
  3. récuperer année d'un champ date
    Par tomm dans le forum Bases de données
    Réponses: 11
    Dernier message: 12/05/2004, 16h24
  4. [CR] Problème de sélection sur un champ date
    Par noluc dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 21/11/2003, 16h56
  5. procedure stockée champ date
    Par tripper.dim dans le forum SQL
    Réponses: 5
    Dernier message: 25/04/2003, 09h47

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