sql语句实战

news/2024/7/9 21:56:16 标签: mysql, 数据库, sql, postgresql

数据库

sql语句格式:

实战:

  • 设置sc(成绩表)表中sno,cno唯一键
sql">alter table sc add unique(sno,cno);
  • 查询所有同学的学号、姓名、选课数、总成绩
sql">SELECT sc.sno,sname,COUNT(cno) '选课数',SUM(score) 'sum'
FROM student,sc
WHERE sc.sno=student.sno
GROUP BY sc.sno
  • 查询姓“李”的老师的个数
sql">SELECT count(tno)
FROM 	teacher
where tname LIKE '李%'
  • 求选择了Java课程且成绩小于60的同学名单,按名字升序排列
sql">select student.sname from  sc,student

where  student.sno=sc.sno and sc.cno in
 (select cno from course where cname='JAVA')and sc.score<60

ORDER BY  student.sname
  • 查询课程1的成绩比课程2的成绩高的所有学生的学号
sql">SELECT s1.sno
from 
		(SELECT sno ,score from sc where cno=1) s1,
		(SELECT sno ,score from sc where cno=2) s2
where s1.sno=s2.sno and s1.score>s2.score;
  • 求Java课程小于平均分的学生的各科成绩
sql">select sno ,cno,score
from sc
where sno in(
	SELECT sno
	from sc,(SELECT cno,avg(score) a from  sc where cno =(SELECT cno from course where cname='JAVA')) avgsc  
    where sc.cno=avgsc.cno and sc.score<avgsc.a 
);
  • 查询平均成绩大于60分的同学的学号和平均成绩
sql">SELECT sno ,AVG(score)
FROM sc
GROUP BY sno
HAVING AVG(score)>60
  • 查询所有课程成绩小于60分的同学的学号、姓名
sql">SELECT sno,sname
FROM  student
where sno not in (SELECT DISTINCT sno from sc where score >60 );
  • 给选择了JAVA课程且成绩小于等于90分的成绩加10分
sql">UPDATE  sc
SET score=score+10
where cno= (SELECT cno from course where cname='JAVA') and sc.score<90

相关连接:

SQL常用语句总结  https://blog.csdn.net/u012757419/article/details/94829361 
经典sql实例大全     https://blog.csdn.net/LoulseLong/article/details/79388345?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task


http://www.niftyadmin.cn/n/1356439.html

相关文章

1597: [Usaco2008 Mar]土地购买

Description 农夫John准备扩大他的农场,他正在考虑N (1 < N < 50,000) 块长方形的土地. 每块土地的长宽满足(1 < 宽 < 1,000,000; 1 < 长 < 1,000,000). 每块土地的价格是它的面积,但FJ可以同时购买多快土地. 这些土地的价格是它们最大的长乘以它们最大的宽,…

面经:亿联网络(yealink)

总体感受&#xff1a; 感觉面试非常标准&#xff0c;面试官问的题目多&#xff0c;深度浅&#xff0c;感觉是以量取胜&#xff0c;30min&#xff0c;大厂的面试题变化不大&#xff0c;可以看看已经面试过同学的面经 面经&#xff1a; 1.自我介绍 2.项目介绍 3.JVM内存划分以…

1084: [SCOI2005]最大子矩阵

Description 这里有一个n*m的矩阵&#xff0c;请你选出其中k个子矩阵&#xff0c;使得这个k个子矩阵分值之和最大。注意&#xff1a;选出的k个子矩阵不能相互重叠。 Input 第一行为n,m,k&#xff08;1≤n≤100,1≤m≤2,1≤k≤10&#xff09;&#xff0c;接下来n行描述矩阵每行中…

动态规划 练习

动态规划&#xff1a; 核 心 &#xff1a;重叠子问题,最优子结构 解题要点&#xff1a;递归函数&#xff0c;递归出口 适用范围&#xff1a;最优解&#xff0c;最大值 1.例题引入&#xff1a;斐波那契数列 使用递归解法&#xff1a; public static int Fibonacci(int …

1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏

Description 奶牛们又在玩一种无聊的数字游戏。输得很郁闷的贝茜想请你写个程序来帮她在开局时预测结果。在游戏的开始&#xff0c;每头牛都会得到一个数N(1<N<1,000,000)。此时奶牛们的分数均为0。如果N是奇数&#xff0c;那么奶牛就会把它乘以3后再加1。如果N是偶数&am…

kpm算法理解

KPM算法&#xff0c;是数据结构课本中串的模式匹配部分讲解的算法。它的需求是求解给定字符串是否包含指定的字符串。 【题目描述】 给定一个主串S及一个模式串P&#xff0c;判断模式串是否为主串的子串&#xff1b;若是&#xff0c;返回匹配的第一个元素的位置&#xff08;序号…

1726: [Usaco2006 Nov]Roadblocks第二短路

Description 贝茜把家搬到了一个小农场&#xff0c;但她常常回到FJ的农场去拜访她的朋友。贝茜很喜欢路边的风景&#xff0c;不想那么快地结束她的旅途&#xff0c;于是她每次回农场&#xff0c;都会选择第二短的路径&#xff0c;而不象我们所习惯的那样&#xff0c;选择最短路…

文件I/O操作(java和c++区别)

java的I/O操作 关联文件用文件操作类&#xff1a;File File常用方法: 对文件内容进行读写操作&#xff1a;字节操作流 or 字符操作流 字节操作流字符操作流举个例子&#xff1a; package edu.thu.keyword.test; import java.io.File; import java.io.InputStreamReader; im…