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

PHP & Base de données Discussion :

Utiliser la valeur d'un limit présent dans une table [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club Avatar de gwena54
    Homme Profil pro
    Webdesigner
    Inscrit en
    Mai 2007
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2007
    Messages : 68
    Points : 57
    Points
    57
    Par défaut Utiliser la valeur d'un limit présent dans une table
    Salut à tous
    j'ai cette table

    je souhaiterais dans une requete mysql utiliser directement la colonne nb dans un limit, mais je n'y arrive pas...
    j'ai essayé ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $req = "SELECT c.id,c.titre,c.contenu,p.id,p.ordre,p.nb as nb, FROM cms_contenu c
     JOIN cms_pages p ON c.page=p.id WHERE p.ordre=1 AND c.publication = 0 ORDER by date DESC LIMIT nb";
    et encore ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $req = "SELECT c.id,c.titre,c.contenu,p.id,p.ordre FROM cms_contenu c
     JOIN cms_pages p ON c.page=p.id WHERE p.ordre=1 AND c.publication = 0 ORDER by date DESC LIMIT 
    (SELECT p2.nb FROM cms_pages p2 WHERE p2.ordre=1) as nb
    une piste ou alors ce n'est tout simplement pas possible?

  2. #2
    Expert éminent sénior

    Avatar de Deepin
    Homme Profil pro
    Ingénieur - Chef de projet Modélisation/Simulation
    Inscrit en
    Avril 2004
    Messages
    3 164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Afrique Du Sud

    Informations professionnelles :
    Activité : Ingénieur - Chef de projet Modélisation/Simulation
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 164
    Points : 51 026
    Points
    51 026
    Par défaut
    hello,
    test cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $req = "SELECT c.id,c.titre,c.contenu,p.id,p.ordre,p.nb as nb, FROM cms_contenu c
     JOIN cms_pages p ON c.page=p.id WHERE p.ordre=1 AND c.publication = 0 ORDER by date DESC LIMIT 0, nb";
    A++

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Pas en une seule requête car la partie LIMIT n'est pas évaluée et doit donc être une(des) constante(s) :
    Citation Envoyé par http://dev.mysql.com/doc/refman/5.0/fr/select.html
    La clause LIMIT peut être utilisée pour limiter le nombre d'enregistrements retournés par la commande SELECT. LIMIT accepte un ou deux arguments numériques. Ces arguments doivent être des entiers constants.

  4. #4
    Membre du Club Avatar de gwena54
    Homme Profil pro
    Webdesigner
    Inscrit en
    Mai 2007
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Webdesigner
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2007
    Messages : 68
    Points : 57
    Points
    57
    Par défaut
    mouais c'est naze, en cherchant comme un fou, je suis tombé sur une doc mysql dans "les choses à faire" et c'était "utiliser les variables mysql dans la clause limit" je suppose que c'est ce que je veux faire...
    sinon comme ma requete était déja en 2 morceaux, j'ai introduit un petit mysql_fetch_array entre les 2 et du coup j'ai récupéré le résultat pour le limit, c'est juste que j'aurais voulu éviter de faire cette opération.

    merci pour votre implication et à bientôt pour de nouvelles aventures!

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

Discussions similaires

  1. [MySQL] Utiliser des valeur SQL de type float dans une bdd pour boutique/panier
    Par sybil dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/03/2011, 15h45
  2. Recherche d'une valeur présent dans une table mais pas dans une autre
    Par bossLINDROS dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 19/06/2008, 15h12
  3. [VBA] fonction qui donne la valeur présente dans une table
    Par zanou666 dans le forum VBA Access
    Réponses: 7
    Dernier message: 25/09/2007, 17h33
  4. Réponses: 10
    Dernier message: 15/12/2006, 07h34
  5. Réponses: 2
    Dernier message: 04/05/2006, 11h34

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