Requete MYSQL avec date

Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics


sim100
WRInaute passionné
WRInaute passionné
 
Messages: 1443
Inscription: 2 Fév 2003

Requete MYSQL avec date

Message le Dim Mai 02, 2004 18:53

Bonjour
Je fais cette requete:

Code: Tout sélectionner
$query_vendre="SELECT * FROM vendre WHERE ventevalid=1 and date_val > #2004-04-30# ORDER BY date_val DESC , heure_val DESC";

C'est le:
Code: Tout sélectionner
date_val > #2004-04-30#
qui pose probleme. Sans cette commande en plus ca marche, mais avec le
Code: Tout sélectionner
AND date_val > #2004-04-30#
ca marche pas :(

Quelqu'un voit-il pourquoi?
En fait je veux selectionner tout ce qu'il y a dans VENDRE, avec les arguments
Code: Tout sélectionner
ventevalide=1
et
Code: Tout sélectionner
date_val > #2004-04-30#
(toutes les dates superieures a 2004-04-30 dans le champs date_val)
Merci

wap
WRInaute impliqué
WRInaute impliqué
 
Messages: 736
Inscription: 1 Mai 2004

Message le Dim Mai 02, 2004 20:19

Tu ne précises pas de quel type est ton champ "date_val", mais vu que je vois aussi un champ "heure_val", j'imagine que ce n'est pas un timestamp...

C'est dommage de ne pas utiliser le type timestamp puisqu'il a été fait pour ça (stocker des dates, quel que soit le format). Et en plus, ça permet d'utiliser des fonctions PHP comme strftime().

Si ce n'est pas trop de boulot, je te conseille très vivement de revoir la structure de ta base de données et d'utiliser le type timestamp pour tes dates et heures. Ta solution actuelle m'a l'air assez "goret" ;)


George Abitbol
WRInaute passionné
WRInaute passionné
 
Messages: 1923
Inscription: 6 Juin 2003

Message le Lun Mai 03, 2004 9:35

S'il utilise un champ DATE ou DATETIME, il n'a pas besoin de changer pour TIMESTAMP.

Code: Tout sélectionner
$query_vendre = "SELECT * FROM vendre WHERE ventevalid = 1 AND date_val > '2004-04-30' ORDER BY date_val DESC, heure_val DESC";


Par contre, évite les SELECT *, fais plutôt SELECT champ1, champ2, etc., où champ1, champ2, etc. sont les champs que tu veux récupérer.

Fred

alain-b
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 402
Inscription: 17 Déc 2002

Re: Requete MYSQL avec date

Message le Mar Mai 04, 2004 18:47

date_val > #2004-04-30

A mon avis on ne compare pas les dates comme des valeurs numériques et
> est un opérateur numerique.

donc la solution serait de convertir les date en timestamp avant de les comparer.
Ou d'utilser un opérateur Mysql spécifique pour les dates (s'il existe)

http://www.nexen.net/docs/mysql/annotee ... ?lien=date


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation REFERENCEMENT naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités