Php

Bonjour,

Je cherche à récupérer dans une base les enregistrements égaux à une variable et ayant un top à "2" et une date de mise à jour différente de la date du jour et sinon les enregistrements ayant un top à "1".
$result1 = mysql_query("select * from feuil1 AS f, structure AS s WHERE s.dga = '$indicatif' and (f.topj='2' and f.jour<>'$jour' or f.topj='1') order by f.agence") or die ('erreur');

Ce bout de code me retourne aussi bien les enregistrements topés "1" et "2".
Auriez-vous une idée ?
Merci

3 réponses

  1. Merci pour ces réponses,
    Franchement, je n'ai pas de doublon, hormis les enregistrements qui ont le top à "2" avec la date de mise à jour différente de celle du jour et le top à "1".

    Voilà un extrait de la base de données :

    indicatif jour top
    AAAA lundi 0
    AAAA vendredi 2
    AAAA mardi 0
    AAAA jeudi 1
    BBBB mercredi 2
    BBBB lundi 1

    donc, il faut que j'obtienne :
    AAAA jeudi 1
    BBBB mercredi 2

    A vot' bon coeur !
    1. tout d'abord, il manque ta jointure entre tes 2 tables, tu devrais avoir les résultats en double, non ???
      1. Bonjour

        Oui, c'est probablement dû au fait que ta variable $jour n'a pas le bon format, et donc que f.jour<>'$jour' est toujours vrai
        Fais un echo $jour et affiche aussi f.jour pour voir