mysql中的一些稍微复杂用法实例代码

  

  

mysql的语法相信对大家来说都不是难的事,但是本文主要给分享了一些mysql复杂用法的相关内容,通过这篇文章相信大家会对mysql更深的了解一些,下面话不多说了,来一起看看详细的介绍吧

  


  

  

GROUP_CONCAT (expr)
  

  
  

1,涉及的表关系:老师表,teacher_subject_rel表(教师所能教的学科表),主题表
  2、业务场景:需要拉取所有教师的编号(teacher_no),学科名(subject_name)。,盼教师表(教师)和学科(teacher_subject_rel)是一对多关系,往往查询出现的是同一教师多条数据。我们希望得到每个教师一条数据学科拼接成一条
  

     

1,基本语法

  
  

group_concat([的]要连接的字段(按排序字段ASC/DESC][分离器的分隔符'])
  

     

2例子

        选择   t。teacher_id“教师id”,   t。teacher_no”教师编号”,   (   选择   GROUP_CONCAT (s.subject_name)   从   teacher_subject_rel临时避难所   离开加入‘主题’s alt=" mysql中的一些稍微复杂用法实例代码">

  


  

  

例子         选择   *   从   (   选择   o.id,   o.student_intention_id,   年代。名字,   s.area_id,   a.area_name,   s.exam_year,   o。状态,   o。状态   当“1”   “待提交的   当“2”   “待指派”   当“3”   “已完成”   当“4”   的处理中”   statusName结束,   案例o.emergency_degree   当“1”   “正常的   当“2”   “紧急的   当“3”   “非常紧急的   emergencyDegreeName结束,   o.emergency_degree,   o.update_time,   (   选择   first_lesson_time   从   jx_strategy   在哪里   jx_lesson_plan_order_id=o.id   和地位(2、7)   和first_lesson_time比;现在()   命令   first_lesson_time ASC   限制1   first_time),   (   选择   deal_user_id   从   jx_strategy   在哪里   jx_lesson_plan_order_id=o.id   和状态& lt;比;7   和deal_user_id & lt;比;0   命令   id DESC   限制1   )作为deal_user_id   从   jx_lesson_plan_order o   离开加入学生年代>   更新教师t内连接(      选择t。teacher_id, t。出生,u。id_number CONCAT (SUBSTRING (u。id_number 7 4),“-”,子串(u。id_number 11 2),“-”,子串(u。2))作为birth2 id_number, 13日,u。reg_date, t。exit_time从老师t   内连接user_info u在u。user_id=t.teacher_id      )信息信息。teacher_id=t.teacher_id   设置t。出生=info.birth2   信息的地方。reg_date祝辞2018-08-20就是和信息。id_number不是零和(信息。出生是NULL或t。出生=")和t。is_train=1      

  

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

mysql中的一些稍微复杂用法实例代码