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 :

LIKE et opérateurs de comparaison


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 2
    Par défaut LIKE et opérateurs de comparaison
    Bonjour, j'ai un petit soucis de requete SQL.

    Je genère une date a partir de Php et d'une boucle For ($date) pour affiché un tableau a double entré (généré en html par php)

    le format de cette date est 'YYYY-MM-DD'

    je dois faire une recherche dans une table sur des dates (a savoir date de début et date de fin, qui elles, sont au format date-time 'YYYY-MM-DD HH:MM:SS')

    Le but de cette requete est de recherche toute les référence de ma table qui sont comprise entre ces deux dates par le biais de $date.

    J'avais réalisé cette requete

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT nom, fan, date_debut, date_fin FROM pret WHERE fan = '$fan' AND '$date' >= date_debut AND '$date' <= date_fin
    le soucis est que de base il va remplir mon $date avec comme heure 00:00:00. De ce fait je ne pourrai affiché correctement dans mon tableau les réels dates de fin ou de début

    Ma question est : Est-il possible de mettre des opérateur de comparaison avec un LIKE dans une requete SQL de ce type (qui ne fonctionne pas ...) ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT nom, fan, date_debut, date_fin FROM pret WHERE fan = '$fan' AND date_debut LIKE <= '%$date%' AND date_fin >= LIKE '%$date%'
    comme ca je pourrai evité la verification sur l'heure et avoir toute les références dont j'ai besoin.

  2. #2
    Membre Expert Avatar de Maximil ian
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 622
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 622
    Par défaut
    Bonjour,

    Je vois deux façons de résoudre le problème :

    - Utiliser le type de colonne DATE plutôt que DATETIME si tu n'as pas besoin de l'heure
    - ne sélectionner que la partie date du DATETIME avec la fonction DATE()

    Pour la comparaison ça fonctionnera de toute façon puisqu'on peut tout à fait comparer une DATE et un DATETIME.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 2
    Par défaut
    Merci pour ces informations

    J'ai résolu mon probleme en changeant la quasi intégrlité de mon code de base

    Mais c'est résolu maintenant

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

Discussions similaires

  1. Requete LIKE opérateur de comparaison ou pas
    Par kitten13 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 11/11/2009, 23h29
  2. PB d'opérateur de comparaison
    Par fxleo dans le forum Langage SQL
    Réponses: 4
    Dernier message: 23/11/2006, 16h19
  3. Pb avec l'opérateur de comparaison IN
    Par petitnuage dans le forum Requêtes
    Réponses: 2
    Dernier message: 06/06/2006, 16h13
  4. implémentation des opérateurs de comparaison
    Par niko8181 dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 28/04/2005, 11h58
  5. Réponses: 15
    Dernier message: 25/01/2005, 16h51

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