数据库
MySQL
– 查询学号前五位同学
1 | SELECT STUDENT_ID,STUDENT_NM,MOBILE_PHONE |
– 去除重复的人
1 | SELECT DISTINCT STUDENT_NM |
– 查询0010学号往后的5位同学
1 | SELECT STUDENT_ID |
– 查询7月份出生的
1 | SELECT BIRTHDAY |
– 查询学号是0001和0006的学生
1 | SELECT STUDENT_ID,STUDENT_NM |
– 查询学号是0001和0006的学生
1 | SELECT STUDENT_ID,STUDENT_NM |
– 班级是001和97年出生的
1 | SELECT CLASSID,BIRTHDAY,STUDENT_ID,STUDENT_NM |
– 班级是001并且97年出生的
1 | SELECT CLASSID,BIRTHDAY,STUDENT_ID,STUDENT_NM |
– 在输入的时候能查询,不输入的时候输出所有
1 | SET @student = 'SX0001'; |
– 同上
1 | SET @student = 'sx0001'; |
– 同上
1 | SET @student = 'sx0001'; |
– 查询出生97年1~6月份的
1 | SELECT STUDENT_NM,BIRTHDAY |
– 查询用户ID,用户姓名,性别,班级,教师,职称,成绩,成绩总和
1 | SELECT s.STUDENT_ID,s.STUDENT_NM,m1.NM,c.CLASS_NM,t.TEACHER_NM,m.NM,a.CHINESE,a.MATHEMATICS,a.ENGLISH,a.CHINESE+a.MATHEMATICS+a.ENGLISH AS 总和 |
– 当遇到成绩中为空值的时候需要使用IFNULL函数,将空值变成0在继续计算
I
1 | FNULL(a.CHINESE,0)+IFNULL(a.MATHEMATICS,0)+IFNULL(a.ENGLISH,0) AS 总成绩 |
– 查询出平局成绩小于60的不及格,无成绩的显示空
1 | SELECT s.STUDENT_ID AS 学生ID, |
– 查询学号SX0002和班级001的学生(UNION练习)
1 | SELECT * |
– 查询三个班级的总成绩
1 | SELECT |
– 同上
1 | SELECT c.CLASS_NM,SUM(IFNULL(a.CHINESE,0)+IFNULL(a.MATHEMATICS,0)+IFNULL(a.ENGLISH,0)) AS 总成绩 |
– 查询每个班的前三名
1 | SELECT s.STUDENT_ID,s.CLASSID,IFNULL(a.CHINESE,0)+IFNULL(a.MATHEMATICS,0)+IFNULL(a.ENGLISH,0) AS 总成绩 |
– 同上
1 | (SELECT s.STUDENT_NM,s.CLASSID,c.CLASS_NM,IFNULL(a.CHINESE,0)+IFNULL(a.MATHEMATICS,0)+IFNULL(a.ENGLISH,0) AS 总成绩 |
– 同理
1 | SELECT |
–同理
1 | SET @rown := 0, |
–判断如果是11位手机号则输出,座机号位8位的前面加’’0411-‘,不足8位补全加“0411-”
1 | SELECT s.STUDENT_ID,s.STUDENT_NM, |
–查询当前3时间,增加两天,两月,减少两天,和时间段的间隔
1 | SELECT DATE_FORMAT(NOW(),'%Y/%m/%d%T') AS 当前时间, |
–取出班主任老师所属学生的英语成绩
1 | SELECT t.TEACHER_NM,s.STUDENT_NM,a.ENGLISH |
–横向转纵向查询男女和职称(max是把那一列最大的排在前面,例如一个数列里面有1 和空格,那样就取1)
1 | SELECT |
–给每个同学的数学成绩+5 超过100的显示100
1 | SELECT |
–查询学生的性别以及班主任和班主任的教学等级
1 | SELECT |
Oracle
–查询每个班的前三名
1 | SELECT |
–查询学号,姓名,总成绩
1 | select s.STUDENT_ID,s.STUDENT_NM,sum(a.ACHIEVEMENT) |
–查询各个科目的成绩
1 | select |
–同上的子查询方法
1 | select |
–Oracle查询时间大全
1 | select to_char(sysdate, 'yyyy') as 年, |
– 在输入的时候能查询**,不输入的时候输出所有
1 | select * |
– 同上
1 | select * |
当LEFT JOIN中的条件中存在WHERE的时候,外连接会默认变成内连接