Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/02/2011, 16h58   #1
Membre éprouvé
 
Avatar de gtraxx
 
Homme Aurélien Gérits
Développeur Web
Inscription : mai 2006
Messages : 1 045
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gérits
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2006
Messages : 1 045
Points : 498
Points : 498
Par défaut selection d'un enregistrement de type timestamp avec une date

bonjour, j'essaie de faire une selection via une date, plus précisément d'une date formatée (2010/11/02).
Cependant le champs contenant la date est un timestamp ce qui rend les choses plus difficiles.
J'ai essayer cette requête :
Code :
1
2
3
SELECT n.*,lang.alias_lang FROM dc_news AS n
		LEFT JOIN dc_language AS lang USING(idlang)
		WHERE n.idnews = "gSEMcv2JdYaVd0dKOIim" AND  n.date_register = "2011-02-03" AND published = 1
Il me retourne null alors que j'ai bien un enregistrement.

Ensuite j'ai essayer avec ceci:
Code :
1
2
3
SELECT n.*,lang.alias_lang FROM dc_news AS n
		LEFT JOIN dc_language AS lang USING(idlang)
		WHERE n.idnews = "gSEMcv2JdYaVd0dKOIim" AND DATE_FORMAT("2011-02-03", GET_FORMAT(n.date_register, "ISO")) AND published = 1
Il me retourne null alors que j'ai bien un enregistrement.
Comment sélectionner convenablement des date timestamp avec une date formatée.
__________________
Au petit déjeuner, je prend du PHP et au souper du jQuery.
AFUP 2009 : Bien optimiser son code pour le référencement
Mon projet open source de librairie PHP 5: magix cjquery
gtraxx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 19h39   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 990
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 990
Points : 18 241
Points : 18 241
Envoyer un message via MSN à CinePhil
Je ne sais pas si c'est dû à ça mais en SQL, les valeurs textuelles s'écrivent entre apostrophes, pas entre guillemets.

Tu peux utiliser CAST pour être sûr de convertir en date ton expression :
Code :
AND  CAST(n.date_register AS DATE) = CAST('2011-02-03' AS DATE)
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2011, 20h59   #3
Membre éprouvé
 
Avatar de gtraxx
 
Homme Aurélien Gérits
Développeur Web
Inscription : mai 2006
Messages : 1 045
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gérits
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2006
Messages : 1 045
Points : 498
Points : 498
Super c'est exactement sa, je ne connaissais pas CAST
Je vais essayer de me documenté un peux mieux sur les fonctions de date et mathématique avec mysql
Pour ce qui est de double quote c'est une erreur de copier coller
PS: Dans quel cas je peux utiliser ceci :
Code :
DATE_FORMAT("2011-02-03", GET_FORMAT(n.date_register, "ISO"))
Histoire de bien comprendre son utilisation
Grand merci
__________________
Au petit déjeuner, je prend du PHP et au souper du jQuery.
AFUP 2009 : Bien optimiser son code pour le référencement
Mon projet open source de librairie PHP 5: magix cjquery
gtraxx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2011, 10h37   #4
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 10 990
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 10 990
Points : 18 241
Points : 18 241
Envoyer un message via MSN à CinePhil
Citation:
Je vais essayer de me documenté un peux mieux sur les fonctions de date et mathématique avec mysql
Fonctions de date et heure de MySQL.

Citation:
Pour ce qui est de double quote c'est une erreur de copier coller
Sauf que tu as recommencé dans le morceau de requête que tu donnes dans ton dernier message !

Citation:
PS: Dans quel cas je peux utiliser ceci :
Code :
DATE_FORMAT("2011-02-03", GET_FORMAT(n.date_register, "ISO"))
Je ne sais pas, je n'utilise DATE_FORMAT que pour transformer une date au format standard SQL 'aaaa-mm-jj' en format français 'jj/mm/aaaa' ou l'inverse. Mais en BDD, il faut stocker les dates en format standard.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/02/2011, 23h32   #5
Membre éprouvé
 
Avatar de gtraxx
 
Homme Aurélien Gérits
Développeur Web
Inscription : mai 2006
Messages : 1 045
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gérits
Âge : 30
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2006
Messages : 1 045
Points : 498
Points : 498
Bonsoir ,
C'est juste une question sur ce bout de script qui provient du site de mysql
Voici l'extrait :
Citation:
Le format ISO est le format ISO 9075, et non ISO 8601.

mysql> SELECT DATE_FORMAT('2003-10-03', GET_FORMAT(DATE, 'EUR')
-> '03.10.2003'
mysql> SELECT STR_TO_DATE('10.31.2003', GET_FORMAT(DATE, 'USA'))
-> 2003-10-31
__________________
Au petit déjeuner, je prend du PHP et au souper du jQuery.
AFUP 2009 : Bien optimiser son code pour le référencement
Mon projet open source de librairie PHP 5: magix cjquery
gtraxx est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h01.


 
 
 
 
Partenaires

Hébergement Web