Bonjour à tous

Je suis confronté à un problème et je sais pas comment le résoudre à partir d'une requête je m'explique :

j'ai deux tables personnes et fiches, En effet chaque personne a une fiche et cette fiche a une date de validité.

La date de validité est de 3 ans. Cette date est calculée à partir de la date de la fiche qui est la date du jour :
Exemple : date_fiche = 01/12/2020 ----> validite_fiche = 01/12/2023

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
--
-- Structure de la table `personnes`
--
 
DROP TABLE IF EXISTS `personnes`;
CREATE TABLE IF NOT EXISTS `personnes` (
  `id` bigint(11) NOT NULL AUTO_INCREMENT,
  `nom` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `prenoms` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL,
PRIMARY KEY (`id`)) 
ENGINE=MyISAM AUTO_INCREMENT=44 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
 
--
-- Structure de la table `fiches`
--
 
DROP TABLE IF EXISTS `fiches`;
CREATE TABLE IF NOT EXISTS `fiches` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `typefiche` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL,
  `date_fiche` date NOT NULL,
  `validite_fiche` date NOT NULL
  PRIMARY KEY (`id`),
  KEY `fk_personnes` (`fk_personnes`)
) ENGINE=MyISAM AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Maintenant voici ce que je recherche à ressortir :

1- Lister pour chaque personne
-le nom,
-le prénoms ,
-le numéro de fiche
-temps restant en fonction de la date de validité

2- A une date donnée Lister
les fiches dont le temps de restant est égale ou supérieur a un 1 ans !

Merci d'avance pour votre aide et vos lumières