Mysql
 sql >> Database >  >> RDS >> Mysql

Errore di sintassi di MySQL Inner Join Query

Il tuo INNER JOIN dovrebbe venire prima di WHERE . Inoltre, non penso che tu abbia bisogno delle parentesi in giro il tuo BETWEEN clausola , ma dubito che causerà un errore in entrambi i casi:

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';

Inoltre, anche se tecnicamente per farla franca, dovresti evitare di usare "data" come nome di colonna selezionato (è un parola riservata ).

Potresti anche fare un po' di razionalizzazione per rendere le cose un po' più facili da leggere:

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';