msi79
Messages postés509Date d'inscriptionlundi 24 août 2009StatutMembreDernière intervention 2 mai 2023
-
11 janv. 2019 à 13:19
msi79
Messages postés509Date d'inscriptionlundi 24 août 2009StatutMembreDernière intervention 2 mai 2023
-
14 janv. 2019 à 12:39
Bonjour,
j'aimerai récupérer la plus grande période lorsqu'elle est inférieur à la période entrée.
voici une image de la table loyers
voici la stucture de la table loyers
CREATE TABLE IF NOT EXISTS `loyers` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`date` datetime NOT NULL,
`periode` varchar(30) NOT NULL,
`montant` int(30) NOT NULL,
`id_ch` int(11) NOT NULL,
`id_bat` int(11) NOT NULL,
`session` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1022 ;
jordane45
Messages postés37539Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 7 juin 2023341 Modifié le 11 janv. 2019 à 13:32
Bonjour,
Tu dois pouvoir directement t'en sortir avec ta requête
avec un truc du genre
SELECT T.*
FROM
( SELECT L.*
,CAST(SUBSTR(L.periode,1,2) AS SIGNED INTEGER) MOIS
,CAST(SUBSTR(L.periode,4,4) AS SIGNED INTEGER) ANNEE
FROM loyers L
WHERE id_bat = '".$row_LOC["id_bat"]."'
AND id_ch = '".$idrs[3]."'
AND concat(ANNEE,MOIS) <= '".$idrs[2] . $idrs[1]."'
) T
ORDER BY concat(ANNEE,MOIS) DESC
LIMIT 1
Cordialement,
Jordane
msi79
Messages postés509Date d'inscriptionlundi 24 août 2009StatutMembreDernière intervention 2 mai 20231 13 janv. 2019 à 12:11
Bonjour j'ai exécuté en directe cette requête voici l'erreur qui s'affiche :
#1054 - Unknown column 'ANNEE' in 'where clause'
msi79
Messages postés509Date d'inscriptionlundi 24 août 2009StatutMembreDernière intervention 2 mai 20231 14 janv. 2019 à 11:31
Bonjour je sais pas comment résoudre cette erreur
jordane45
Messages postés37539Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention 7 juin 2023341 14 janv. 2019 à 11:47
SELECT L.*
,CAST(SUBSTR(L.periode,1,2) AS SIGNED INTEGER) MOIS
,CAST(SUBSTR(L.periode,4,4) AS SIGNED INTEGER) ANNEE
,concat(SUBSTR(L.periode,4,4),SUBSTR(L.periode,1,2)) as PERIODEyyyymm
FROM loyers L
WHERE id_bat = '7'
AND id_ch = '717'
AND concat(SUBSTR(L.periode,4,4),SUBSTR(L.periode,1,2)) <= '201812'
ORDER BY concat(SUBSTR(L.periode,4,4),SUBSTR(L.periode,1,2)) DESC
LIMIT 1
msi79
Messages postés509Date d'inscriptionlundi 24 août 2009StatutMembreDernière intervention 2 mai 20231 14 janv. 2019 à 12:39
13 janv. 2019 à 12:11
#1054 - Unknown column 'ANNEE' in 'where clause'
14 janv. 2019 à 11:31
14 janv. 2019 à 11:47
14 janv. 2019 à 12:39