Je INNER JOIN
moet voor de WHERE
. komen . Ik denk ook niet dat je de parens in de buurt nodig hebt jouw BETWEEN
clausule
, maar ik betwijfel of het hoe dan ook een fout zal veroorzaken:
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';
Ook, hoewel ze technisch laat je ermee wegkomen, vermijd het gebruik van "datum" als een geselecteerde kolomnaam (het is een gereserveerd woord ).
Je zou ook een beetje kunnen stroomlijnen om de zaken wat leesbaarder te maken:
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';