Votre INNER JOIN
doit venir avant le WHERE
. Je ne pense pas non plus que vous ayez besoin des parenthèses autour votre BETWEEN
clause
, mais je doute que cela provoque une erreur dans les deux cas :
SELECT Workouts.date as date, Workout_locations.location_id as loc_id
FROM Workouts
INNER JOIN Workout_locations ON Workouts.id=Workout_locations.workout_id
WHERE Workouts.pacegroup_id = '9'
AND Workouts.date BETWEEN '2013-08-19' AND '2013-08-25';
De plus, bien qu'ils techniquement vous laisser vous en tirer, vous devriez éviter d'utiliser "date" comme nom de colonne sélectionné (c'est un mot réservé ).
Vous pouvez également rationaliser un peu pour rendre les choses un peu plus faciles à lire :
SELECT Workouts.date AS wo_date, Workout_locations.location_id AS loc_id
FROM Workouts w
INNER JOIN Workout_locations l ON w.id = l.workout_id
WHERE w.pacegroup_id = '9'
AND w.date BETWEEN '2013-08-19' AND '2013-08-25';