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

MySQL Discussion :

Opération sur une colonne précédement traitée


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2014
    Messages : 153
    Par défaut Opération sur une colonne précédement traitée
    Bonjour,

    Je m'arrache les cheveux sur une requete d'extraction de donné de ma base.

    Je cherche à sortir les données entre une table d'actualité et une table de partage puis de les affiché par interval de temps

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT actualite.id_actu, actualite.ID,  
    		actualite.creationdate AS date_corrigee,
    		CASE WHEN partage.creationdate IS NULL THEN actualite.creationdate 
                 
    		ELSE partage.creationdate END AS date_corrigee,
            
    		TIME_TO_SEC(TIMEDIFF(NOW(), date_corrigee)) AS intervale 
    		FROM actualite LEFT JOIN partage ON actualite.id_actu = partage.id_actu 
    		WHERE actualite.ID = 2 OR actualite.id_actu IN (776, 773, 777, 682, 828) 
    		 
    		GROUP BY actualite.id_actu ORDER BY date_corrigee DESC LIMIT 0, 10
    La partie en gras ne passe pas (Unknow column 'date_corrigee').
    Est-ce que quelqu'un sourait comment je peux obtenir un interval sur cette date corrigé?


    Merci

  2. #2
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 613
    Billets dans le blog
    10
    Par défaut
    Bonsoir,

    Vous ne pouvez pas procéder ainsi, car la valeur date_corrigee n'est pas attribuée quand vous exécutez la requête

    Pour pouvoir faire votre conversion de date, utilisez une CTE qui affecte date_corrigee, puis faites votre requete

  3. #3
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 889
    Par défaut
    Salut setni.

    Il faut utiliser une constante pour résoudre ton problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    --------------
    select now(), TIME_TO_SEC(TIMEDIFF(NOW(), '2015-08-15 00:00:00')) as 'diff'
    --------------
     
    +---------------------+-------+
    | now()               | diff  |
    +---------------------+-------+
    | 2015-08-15 06:45:09 | 24309 |
    +---------------------+-------+
    Ou bien comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    --------------
    set @date_corrigee='2015-08-15 00:00:00'
    --------------
     
    --------------
    select now(), TIME_TO_SEC(TIMEDIFF(NOW(), @date_corrigee)) as 'diff'
    --------------
     
    +---------------------+-------+
    | now()               | diff  |
    +---------------------+-------+
    | 2015-08-15 06:45:09 | 24309 |
    +---------------------+-------+
    @+

  4. #4
    Membre confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2014
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2014
    Messages : 153
    Par défaut
    Bonjour

    Merci pour vos réponses, elles m'ont permis de comprendre le problème,

    J'ai cependant utilisé le php pour le résoudre. A l'aide d'une seconde requête.

    Merci

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

Discussions similaires

  1. [Débutant] Opération sur une colonne de ma matrice
    Par jimbe dans le forum MATLAB
    Réponses: 8
    Dernier message: 04/07/2015, 13h16
  2. Réponses: 7
    Dernier message: 18/06/2012, 15h53
  3. Réponses: 7
    Dernier message: 18/06/2012, 11h30
  4. opérations sur une même colonne
    Par sriverxp dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 04/05/2010, 20h43
  5. Opérations sur les colonnes d'une matrice
    Par george216 dans le forum MATLAB
    Réponses: 6
    Dernier message: 04/01/2010, 08h08

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