您的当前位置:首页正文

数据库单表的查询

2024-11-12 来源:个人技术集锦

需要自己建一张里面写好数据的表,查询是对这张完成的表进行操作。

我的表:

id  name   age   score

1

2

3


里面的自己填




第一部分:---基本显示数据


第一节:行列操作

  显示表所有数据:

select * from student;

  显示部分列数据:

select id,name,age from student; 列操作在前面。

  显示部分行数据:

select * from student where id=2,age>22; 行操作在后面。


第二节:限制条件

  显示约束点数据:

select * from student where age in(1,2,3,4); 找某几个点。

  显示约束范围数据:

select * from student where age>=10 and age<=11; 找个范围。

  显示null的行

select * from student where age is null;

  模糊查询:

select * from student where name like '小%'; %代表名字有小字的都显示出来。

select * from student where name like '小_' _代表小x,显示的只有两个字,且第一个是小。

  显示非重复部分(A,A,B,C变为A,B,C):

select distinct age from student;


第三节:逻辑语句

  and 语句(且):

select * from student where name like '小%' and age=10;

  or 语句(或):

select * from student where name like '小%' or age=10;


第四节:升降序

  升序排列:

select * from student order by age asc;

  降序排列:

select * from student order by age desc;





第二部分:函数


  count()函数:

select count(*) from student; 有多少行。

select count(*) as new_name from student;   命个名。

select count(*) from student group by age;   相同年龄的的有多少个。

select count(*),age from student group by age;  输出相同年龄有多少个的同时把年龄也输出出来。

  sum()函数

select sum(score),name from student where name ="小张"; 小张成绩总和。

select sum(score),name from student group by score; 所有人的成绩总和。

  avg()函数

select avg(score),name from student group by score;求所有人的平均成绩。

  max()和min()函数

select max(score),name from student group by score;成绩最高的科目。

select min(score),name from student group by score;成绩最高的科目。





第三部分:连接查询

  我没看太懂,就知道他是处理多个表的方法,就会最简单的,其他的用到再说。

两个表 student1,student2自己打代码,自己看,这个实在是说不清楚。

select * from student1,student2;

select * from student union select * from student1;将两个表合并查询(完全一样的合并)

select * from student union all select * from student1;经两个表不合并查询





第四部分:子查询

我个人把子查询当作综合查询。


  



 分页查询;

select * from student limit 0,5; 从0开始有五条;

select * from student limit 5,5; 从6开始有五条,没错就是6;













显示全文