ImmortalPC
Messages postés954Date d'inscriptionmardi 11 mai 2004StatutMembreDernière intervention11 novembre 2008
-
12 avril 2006 à 22:51
SkySkillz
Messages postés4Date d'inscriptionsamedi 28 juillet 2007StatutMembreDernière intervention27 mars 2008
-
25 mars 2008 à 17:04
Salut,
J'aimera séléctionner tout ce qui as entre le 2006-4-10 et le 2006-4-17
Dans ma table SQL j' ai une date de commencement et une date de fin (d' un evenement)
date_start et date_end
Leur type : datetime (oui je sais on peut gagner de la place en transformant le tout en un chiffre dans un int) (format : 0000-00-00 00:00:00)
date_start et date_end peuvent commencer avant le 2006-4-10 et finir après le 2006-4-17
Voici une ligne dans ma table
"id","date_start", "date_end", "sujet"
1, "2006-04-5", "2006-05-28", "Mon sujet"
Voici mon code qui marche po :-(
SELECT `id`,`date_start`,`date_end`,`sujet` FROM `calendrier` WHERE ("2006-4-10">=`date_start` AND `date_start`<="2006-4-17") OR ("2006-4-10">=`date_end` AND `date_end`<="2006-4-17");
Où est le bug ?
@+ et merci
Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.
ImmortalPC
Messages postés954Date d'inscriptionmardi 11 mai 2004StatutMembreDernière intervention11 novembre 20082 13 avril 2006 à 13:32
Salut,
J' ai trouvé ;-)
pour ceux que ça intéresse voilà le code :
SELECT `id`,`date_start`,`date_end`,`titre`,`msg` FROM `calendrier` WHERE (`date_start`>="2006-4-10" AND `date_start`<="2006-4-17") OR (`date_start`<="2006-4-17" AND `date_end`>="2006-4-17") OR (`date_end`>="2006-4-10" AND `date_end`<="2006-4-17");
@+
Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.
SkySkillz
Messages postés4Date d'inscriptionsamedi 28 juillet 2007StatutMembreDernière intervention27 mars 2008 20 mars 2008 à 16:38
Voilà, je n'ai pas eu le même problème que toi, mais je cherche à connaitre la requête SQL que tu as utilisé pour creer 2 variables de type DATETIME.
TIMESTRAMP n'accepte qu'un seul champ tel que:
var1 TIMESTRAMP NULL default CURRENT_TIMESTRAMP;
//var2 TIMESTRAMP NULL default CURRENT_TIMESTRAMP; (Génére une erreur de type doublon TIMESTRAMP)
J'ai été obligé pour mon 2ème champ de mettre:
var2 TIMESTRAMP NULL default NULL,
Je contourne le problème, tant que je peux ensuite réalimenter les champs par INSERT INTO ça ira.
Mais au début, je désirais entrer la date par DATE ou DATETIME ou même TIME, sous la forme ('d/m/y H:i').
Malheureusement impossible de générer la requête de création de table avec ça, je dois avoir un problème de codage...
var DATE('d/m/y H:i') //Erreur
var DATETIME('d/m/y H:i') //Erreur
var TIME('d/m/y H:i) //Erreur
var DATE NULL default 'd/m/y H:i';//Erreur
var DATETIME NULL default 'd/m/y H:i'; //Erreur
var TIME NULL default 'd/m/y H:i'; //Erreur
Merci d'avance si quelqu'un me trouve la bonne syntaxe pour avoir la date sous cette forme en création de table SQL.
J'utilise MySQL 5.1 et PhpMyAdmin 2.11.6.
ImmortalPC
Messages postés954Date d'inscriptionmardi 11 mai 2004StatutMembreDernière intervention11 novembre 20082 21 mars 2008 à 11:07
Salut !
la requette c 'est :
`champs_1` DATETIME NOT NULL
@+
Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi.
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.