Bonjour,
j'ai 2 tables, une voiture et une location.
Structure de la table `location`
-- Contenu de la table `location`
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 -- CREATE TABLE `location` ( `location_id` int(11) NOT NULL auto_increment, `location_fk_voiture` int(11) NOT NULL, `location_fk_client` int(11) NOT NULL, `location_date_debut` varchar(12) NOT NULL, `location_date_fin` varchar(12) NOT NULL, PRIMARY KEY (`location_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ; --
-- Structure de la table `voiture`
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 -- INSERT INTO `location` (`location_id`, `location_fk_voiture`, `location_fk_client`, `location_date_debut`, `location_date_fin`) VALUES (1, 6, 1, '2009-05-01', '2009-05-15'); -- -------------------------------------------------------- --
-- Contenu de la table `voiture`
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 -- CREATE TABLE `voiture` ( `id` int(11) NOT NULL auto_increment, `marque` varchar(50) NOT NULL, `modele` varchar(50) NOT NULL, `type` varchar(20) NOT NULL, `immatriculation` varchar(10) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ; --
J'aimerais faire une requete qui me donne les voitures disponible entre 2 dates et les voitures pour lesquelles il n'y a pas de location.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 -- INSERT INTO `voiture` (`id`, `marque`, `modele`, `type`, `immatriculation`) VALUES (1, 'audi', 'tt', 'coupe', '123-abc'), (2, 'fiat', 'uno', 'mini', '321-aze'), (3, 'fiat', 'marea', 'break', '147-poi'), (4, 'renault', 'twingo', 'mini', 'uyt-987'), (5, 'vw', 'polo', 'mini', '945-lst'), (6, 'ford', 'transit', 'utilitaire', '159-poi');
J'ai essaié ceci mais quand je fais l'echo des champs location_date_debut et location_date_fin il n'y a rien alors que dans la db il y a bien quelque chose et que j'ai fait un select de la table location et il m'affiche bien tous les champs
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT DISTINCT id, marque, modele, type, immatriculation FROM voiture LEFT OUTER JOIN ( SELECT * FROM location WHERE location_date_debut > '".dateFin."' OR location_date_fin < '".dateDebut."' ) location ON id = location_fk_voiture
Partager