1. #1
    Membre du Club
    Profil pro
    Inscrit en
    mai 2010
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2010
    Messages : 128
    Points : 56
    Points
    56

    Par défaut UPDATE vis à vis de la ligne en cours de lecture

    Bonjour à tous,

    J'essaie en ce moment de mettre à jour chaque ligne d'une de mes tables à l'aide d'une requête qui sélectionne deux champs, les concatène, puis insère le résultat dans un autre champs de la même table.
    Je sais que je pourrais le traiter en PHP, mais j'aimerais apprendre si une solution purement SQL est possible.

    Ma requete ne fonctionne pas à l'heure actuelle (retourne plusieurs lignes dans la sous requête du coup plante):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE donnees SET referc = (SELECT CONCAT(refer, taille) FROM donnees)
    Mon principal problème étant de signifier que je ne veux "refer" et "taille" que pour la ligne lue...

    NB: J'utilise PostGre.

  2. #2
    Expert éminent
    Homme Profil pro
    Développeur Freelance
    Inscrit en
    janvier 2009
    Messages
    3 270
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Freelance

    Informations forums :
    Inscription : janvier 2009
    Messages : 3 270
    Points : 6 908
    Points
    6 908

    Par défaut

    Bonjour,
    Pourquoi passer par une sous-requête ?
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    update MaTable set Col2 = concat(col1,col3)

    Tatayo.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    mai 2010
    Messages
    128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mai 2010
    Messages : 128
    Points : 56
    Points
    56

    Par défaut

    Je vous remercie vivement pour cette solution. Je n'aurais jamais pensé que cela pourrait fonctionner ainsi d'où ma suggestion de sous-requête.

    Merci encore

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    janvier 2010
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 589
    Points : 9 300
    Points
    9 300

    Par défaut

    Bonjour,

    Si votre SGBD le permet, passez plutôt par une colonne calculée, ou par une vue.

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

Discussions similaires

  1. récupérer la ligne en cours de lecture dans un datagridview
    Par leeloo95 dans le forum Windows Forms
    Réponses: 0
    Dernier message: 20/01/2010, 11h21
  2. Réponses: 2
    Dernier message: 05/02/2006, 22h19
  3. Fenêtre modale vis à vis de la fenêtre appelante
    Par hroz dans le forum Composants VCL
    Réponses: 1
    Dernier message: 08/11/2005, 15h33
  4. Récupérer la ligne en cours dans un DBGrid
    Par PH69 dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/07/2005, 17h59
  5. indépendance vis à vis de ODBC
    Par ka0z dans le forum ASP
    Réponses: 2
    Dernier message: 08/06/2004, 17h56

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