簡體   English   中英

mysql連接無法按預期工作

[英]mysql join not working as expected

我想選擇給定日期的特定老師的時間表..聲明應假定老師可以在小學和中學任教

這是我的聲明

 `select 
   class.name as subject_classmodel_name, 
   teachers.name as subject_teachers_name, 
   section.name as subject_section_name, 
   day.name as day_name,
   time_format(time_range.time_start,'%H:%i') as time_time_start,
   time_format(time_range.time_end,'%H:%i') as time_time_end,
   sched.subject_ref, sched.time_ref, sched.day_ref
   from schedule sched
   join class_teachers_section
   join time_range
   join day
   join class
   join teachers
   join section
   where teachers.name = "ronald manlapao" and 
   section.level = "elementary" and 
   time_range.level = "elementary" and 
   class_teachers_section.id = sched.subject_ref and 
   class.id = class_teachers_section.class_ref  and 
   teachers.id = class_teachers_section.teachers_ref and 
   section.id = class_teachers_section.section_ref and
   day.id = sched.day_ref
   order by time_range.time_start asc`

class_teachers_section(表)具有表class,teachers,section schedule(表)具有表class_teachers_section,day,time_range

輸出

在此處輸入圖片說明

預期結果

time_start(14:00)time_end(15:00)中只有一行(最后一行)應該在subject_classmodel_name,subject_teachers_name,subject_section_name,subject_ref,time_ref和day_ref列中具有數據。 其余的應該為空

我正在使用MYSQL 5.6。

我認為它不起作用,因為您缺少“ ON”語句

正確的語法是

SELECT field FROM tableA
JOIN tableB
ON tableA.id = tableB.id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM