发表于: 2017-09-27 22:20:58
1 731
今日完成:
1、有两个不同的表(类),他们是一对多关系,通过 其中一张表中的 id 主键字段关联。
现在欲通过一个表(类)的某个String类型的字段(模糊查找)来匹配到另一个表里的数据。
例如,任务(task)表,
id task_name subject_id
科目(subject)表,
id subject_name
要通过“subject_name”字段来查找对应的 task,我想是否也就两种办法,
一种是连表查询,sql为
select id from task T join subject S on T.subject_id = S.id where S.subject_name like "%语文%";
另一种,sql为
select id from subject where subject_name like "%语文%";
select id from task where subject_id in (id,id,id...);
如果有更多的类呢?
科目(subject):id subject_name
专题(lesson):id lesson_name subject_id
课程(period):id period_name lesson_id subject_id
任务(task): id task_name period_id lesson_id subject_id
如上图,现在的需求是通过 subject_name,lesson_name,period_name 多个搜索条件的叠加(模糊查询)来查找 Task。
如果用连表查询,
select id from task T join Period P on T.period_id = P.id join Lesson L on T.lesson_id = L.id join subject S on T.subject_id = S.id where P.period_name like "%小说鉴赏%" and L.lesson_name like "%文学%" and S.subject_name like "%语文%";
如果用单句sql查询,是否是这样的?
select id from subject where subject_name like "%语文%";
select id from lesson where lesson_name like "%文学%";
select id from period where period_name like "%小说鉴赏%";
select id from task where subject_id in (id...) and lesson_id in(id...) and period_id in (id...);
我在逗你学后台的任务搜索里,用了单句sql查询,
明日计划:
1、前端项目的部署。
首页的专题课程任务各接口调试。配合金超张帆大家齐心完成项目。
遇到的问题:
收获:
部署完 academy-pc-web 并配置了nginx后,nginx 502 bad gateway 错误。
检查错误
评论