--可以才用left和right函数结合,,前提是stuid是字符类型,如果不是,请先将学号转化为字符类型
select stuid,stuname,sexcode,classid,specialityidfrom g_stuinfo
left join g_sexinfo on g_stuinfo.sexcode=g_sexinfo.sexcode
left join g_specialityinfo on g_specialityinfo.specialityid=g_stuinfo.special
where specialityname='电子商务' and sexcode='1'
and left(right(g_stuinfo.stuid,2),1)='3'
1.select * from 表名 where 学号 like '%[4,5]'2.select * from 表名 group by 学生号 having 成绩>avg(成绩)
1.select * from XSQK,KC,XS_KC where XSQK.学号=XS_KC.学号 and XSQK.课程号=XS_KC.课程号 and XSQK.学号 like '%[4,5]'------------------*的部分是查询所有列,你可以针对的填上你想要的列
2.select * from XSQK,KC,XS_KC -----------这是要从3个表中查询
where XSQK.学号=XS_KC.学号 and XSQK.课程号=XS_KC.课程号 -------这是3个表关联到一起
and XS_KC.学号 in---------我限定的条件 学号在in里面
(select XS_KC.学号 from XS_KC group by XS_KC.学号 having min(成绩)>60)
------------嵌套的查询是 通过学号分组 每个人有多个成绩,最小的成绩大于60 说明他所有成绩都大于60 ,返回的是学号,
-----------------最终结果是 返回所有成绩都大于60的所有同学的全部信息
如果不明白 追问
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)