mysql PHP join - 语法问题

时间:2012-06-12 04:24:16

标签: php mysql

我正在尝试加入3个表但我的查询一直出错。我不确定我做错了什么。我必须做一些不正确的语法,但我不确定是什么问题。

SELECT project_timecard_tasks.DateTime,
        project_timecard_tasks.Total_Hours,
        project_timecard_tasks.User_ID,
        project_timecard_tasks.Task_ID,
        project_timecard_tasks.Project_ID,
        users.User_ID,
        users.FirstName,
        users.LastName,
        tasks.id,
        tasks.taskName

 FROM project_timecard_tasks

 JOIN project_timecard_tasks ON project_timecard_tasks.User_ID = users.User_ID 
 AND project_timecard_tasks.Task_ID = tasks.id

 WHERE project_timecard_tasks.Project_ID = '$jobNumber'

4 个答案:

答案 0 :(得分:2)

您的JOIN声明有点不稳定。试试这个:

SELECT project_timecard_tasks.DateTime,
        project_timecard_tasks.Total_Hours,
        project_timecard_tasks.User_ID,
        project_timecard_tasks.Task_ID,
        project_timecard_tasks.Project_ID,
        users.User_ID,
        users.FirstName,
        users.LastName,
        tasks.id,
        tasks.taskName

 FROM project_timecard_tasks

 JOIN users ON project_timecard_tasks.User_ID = users.User_ID 
 JOIN tasks ON project_timecard_tasks.Task_ID = tasks.id

 WHERE project_timecard_tasks.Project_ID = '$jobNumber'

答案 1 :(得分:0)

您正在从三个表(project_timecard_tasks , users and tasks)中选择数据,但在from子句中,您只提到了一个表。你需要提到所有的表名,如:

 FROM project_timecard_tasks ,users, tasks

答案 2 :(得分:0)

你加入不正确。您需要指定要加入的表。替换为:

JOIN users ON project_timecard_tasks.User_ID = users.User_ID 
JOIN tasks ON project_timecard_tasks.Task_ID = tasks.id

答案 3 :(得分:0)

删除AND并在第二个连接语句中使用JOIN

JOIN project_timecard_tasks ON project_timecard_tasks.User_ID = users.User_ID JOIN project_timecard_tasks.Task_ID = tasks.id