Mysql
 sql >> база данни >  >> RDS >> Mysql

Грешка в синтаксиса на MySQL Inner Join Query

Вашето INNER JOIN трябва да е преди WHERE . Също така не мисля, че имате нужда от скобите наоколо вашият BETWEEN клауза , но се съмнявам, че така или иначе ще доведе до грешка:

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

Освен това, въпреки че технически да ви позволи да се измъкнете, трябва да избягвате да използвате „дата“ като име на избрана колона (това е запазена дума ).

Можете също така да направите малко рационализиране, за да направите нещата малко по-лесни за четене:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на MySql MySQLMembershipProvider - autogenerateschema=true не работи?

  2. Белия списък с диапазони на IP адреси с помощта на cPanel

  3. Laravel Sum колонна база данни Eloquent

  4. MySQL заявката връща дублиращи се редове

  5. mysql импорт/експорт