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 MySQL Discussion :

Deux Requêtes imbriquées


Sujet :

Requêtes MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 111
    Par défaut Deux Requêtes imbriquées
    Salut

    J'aurais besoin d'un petit coup de pouce concernant une requête qui fait mal à la tête en tout cas à la mienne

    En fait j'ai une page sur laquelle j'ai une première boucle sur la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $colname_rsobs = "-1";
    if (isset($_GET['id_pat'])) {
      $colname_rsobs = (get_magic_quotes_gpc()) ? $_GET['id_pat'] : addslashes($_GET['id_pat']);
    }
    mysql_select_db($database_kaerys, $kaerys);
    $query_rsobs = sprintf("SELECT * FROM tobservances LEFT JOIN tmedecin ON tobservances.numpresc_obs = tmedecin.id_med LEFT JOIN tpatient ON tobservances.numpat_obs = tpatient.id_pat LEFT JOIN tusers ON tobservances.numtec_obs = tusers.id_use LEFT JOIN ttypeinter ON tobservances.numtype_obs = ttypeinter.id_typ WHERE numpat_obs = %s ORDER BY tobservances.date_obs DESC", $colname_rsobs);
    mais à l'intérieur de cette même page j'ai un tableau qui doit reprendre toutes les données antérieures à la date de la première requête, c'est à dire :

    à partir de la 1ère boucle j'obtiens :

    Page 1 (boucle 1) : date 03/06/08
    tableau (boucle 2) de la page 1 :
    _______05/05/08 | 30/05/08 | 03/06/08
    data >>__ 5,3______ 6,8_______ 7,2

    Page 2 (boucle 1) : date 20/06/08
    tableau (boucle 2) de la page 2 :
    _______05/05/08 | 30/05/08 | 03/06/08 | 20/06/08
    data >>__ 5,3______ 6,8______ 7,2_______ 8,6


    Voici la seconde requête sur laquelle est appliquée la seconde boucle et qui permet d'obtenir en théorie les données du tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $colname_rstableobs = "-1";
    if (isset($row_rsobs['date_obs'])) {
      $colname_rstableobs = (get_magic_quotes_gpc()) ? $row_rsobs['date_obs'] : addslashes($row_rsobs['date_obs']);
    }
    mysql_select_db($database_kaerys, $kaerys);
    $query_rstableobs = sprintf("SELECT * FROM tobservances WHERE date_obs <= %s ORDER BY tobservances.date_obs DESC", $colname_rstableobs);
    $rstableobs = mysql_query($query_rstableobs, $kaerys) or die(mysql_error());
    $row_rstableobs = mysql_fetch_assoc($rstableobs);
    $totalRows_rstableobs = mysql_num_rows($rstableobs);
    Le petit soucis avec ou sans boucle je n'obtiens aucune donnée avec la seconde requête, je pense qu'il s'agit d'un problème de syntaxe car le WHERE est lié à un champ Date. J'ai essayé un echo sur la seconde requête mais toujours aucune donnée, et la table contient bien des valeurs.

    Une petite idée ?

    MERCI

  2. #2
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Par défaut
    salut,

    que te retourne le echo de ta requete?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 111
    Par défaut
    Salut

    Quand je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php echo $query_rstableobs ;?>
    j'obtiens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tobservances WHERE date_obs = 2008-07-17
    La date correspond bien au premier enregistrement issu de mon 1er select.
    Dans cet enregistrement, il y a bien des valeurs pour les champs :
    obshj_obs et iahresid_obs

    Mais elles ne s'affichent pas lorsque je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php echo $row_rstableobs['obshj_obs']; ?>
    ou 
    <?php echo $row_rstableobs['iahresid_obs']; ?>
    Merci

  4. #4
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Par défaut
    salut,

    la requete doit être :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM tobservances WHERE date_obs = '2008-07-17'
    et ca devrait fonctionner

    A+

    Michel

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 111
    Par défaut
    Merci ! C'était ça

    Je peux abuser encore un peu ?

    En fait j'ai toujours la même valeur qui apparaît, comment peut-on l'expliquer ?

    Merci

  6. #6
    Expert confirmé Avatar de Cybher
    Homme Profil pro
    Consultant réseaux et sécurité
    Inscrit en
    Mai 2005
    Messages
    3 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant réseaux et sécurité
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 281
    Par défaut
    euh, quelle valeur?
    tu peux être un peu plus précis
    merci

Discussions similaires

  1. Imbriquer deux requêtes SQL
    Par PREUX dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/11/2013, 19h06
  2. Deux requêtes FOR imbriquées
    Par prodit96 dans le forum PL/SQL
    Réponses: 2
    Dernier message: 08/10/2012, 01h02
  3. Requête imbriquée avec deux "rangements par ordre de"
    Par reivinternet dans le forum PostgreSQL
    Réponses: 17
    Dernier message: 09/12/2010, 10h34
  4. [AC-2007] Créer une requête imbriquant deux INNER JOIN
    Par Olivier JC dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 09/09/2009, 23h23
  5. [Zend_db_table] Deux requête imbriquées
    Par Spiff__ dans le forum Zend_Db
    Réponses: 3
    Dernier message: 26/03/2008, 22h20

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