您的位置首页生活百科

数据库查询

数据库查询

分析如下:

--1select SC1.S# from SC SC1 JOIN SC SC2 ON SC1.S#=SC2.S#

WHERE SC1.C#='001' AND SC2.C#='002' AND SC1.score>SC2.score

--2select S#,AVG(score)

平均成绩 from SC group by S#

having AVG(score)>60 --3select Student.S#,

Sname,COUNT(*) 选课数,SUM(score) 总成绩

from Student JOIN SC on Student.S#=SC.S#

group by Student.S#,Sname

扩展资料:

数据库操作的注意事项

1、对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。

最好不要给数据库留NULL,尽可能的使用 NOT NULL填充数据库.

3、应尽量避免在 where 子句中使用 != 或 <> 操作符,否则将引擎放弃使用索引而进行全表扫描。

可以这样查询:

5、in 和 not in 也要慎用,否则会导致全表扫描,如:select id from t where num in(1,2,3)

对于连续的数值,能用 between 就不要用 in 了:select id from t where num between 1 and 3

很多时候用 exists 代替 in 是一个好的选择:select num from a where num in(select num from b)

用下面的语句替换:select num from a where exists(select 1 from b where num=a.num)

6、下面的查询也将导致全表扫描:select id from t where name like ‘%abc%’

若要提高效率,可以考虑全文检索。

参考资料来源:

抖音看短剧