2016-05-30 66 views
0

人覺得專欄,我寫這篇文章的SQL我的應用程序:無法在行

SELECT concat(c.contact_first_name,' ',c.contact_last_name) as user, 
sum(tl.task_log_hours) as total_hours, 
sum(tl1.task_log_hours) as billable_hours 
FROM u364432559_dotpd.dotp_task_log tl, u364432559_dotpd.dotp_contacts c, u364432559_dotpd.dotp_projects p, u364432559_dotpd.dotp_companies co, u364432559_dotpd.dotp_tasks tk, u364432559_dotpd.dotp_users u 
LEFT JOIN u364432559_dotpd.dotp_task_log tl1 on tl.task_log_creator = tl1.task_log_creator ... //where clauses omitted for brevity// 

當我運行它,它說:「Unknown column 'tl.task_log_creator' in 'on clause'」。這是爲什麼?在此之前引用了tl表,並且我正在加入tl1。

此查詢用於獲取用戶的名稱,小時數(總小時數)和計費小時數的總和(表格中有一個特殊的標誌,表示這一點)。如果這是實現我想要的結果的最佳方式,我也樂於提供建議。

回答

0

如果您在表單中使用了大量表格,則必須使用()來在JOIN中看到所有表格。所以:

FROM (u364432559_dotpd.dotp_task_log tl, u364432559_dotpd.dotp_contacts c, u364432559_dotpd.dotp_projects p, u364432559_dotpd.dotp_companies co, u364432559_dotpd.dotp_tasks tk, u364432559_dotpd.dotp_users u)