evenkil
Messages postés35Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention15 avril 2014
-
21 juil. 2007 à 21:42
rethenor
Messages postés48Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention 9 mai 2011
-
25 juil. 2007 à 17:45
Bonjour,
J'aimerai pouvoir déterminer dans quelle tranche de période se situe une date donnée.
Je voulai savoir si il est possible de concevoir une requete sql pour interrogger directement la base de donnée ou bien est ce qu'il faut concevoir un algo en php ?
Voici ma table SQL :
CREATE TABLE `heber_chambres_prix` (
`id` int(15) NOT NULL,
`id_chambre` varchar(10) collate latin1_german2_ci NOT NULL,
`start` date NOT NULL,
`end` date NOT NULL,
`prix` varchar(10) collate latin1_german2_ci NOT NULL,
PRIMARY KEY (`id`)
) ;
rethenor
Messages postés48Date d'inscriptionmercredi 11 juillet 2007StatutMembreDernière intervention 9 mai 2011 25 juil. 2007 à 17:45
La réponse de JulSoft est tout justifiée :
SELECT * FROM table WHERE start<'$date' AND end>'$date'
mais c'est à evenkil de mettre les bonnes valeurs dans la variable $date ou alors à faire en sorte que l'une des bornes (start ou end) puisse englober la date donnée:
...WHERE start<='$date' AND end>'$date'
ou
...WHERE start<'$date' AND end>='$date'
Si l'on s'en tient à la stricte infériorité ou supériorité, il se peut qu'une date ne soit pas prise en compte DANS la fourchette de dates si celle-ci est égale à l'une des bornes.
A moins qu'on veuille absolument que les deux bornes puissent l'englober :
...WHERE start<='$date' AND end>='$date'
mais dans ce cas, c'est à evenkil de savoir ce qu'il veut tester...