关于数据库的查询基础
初始数据库后我们除了会创建数据库和新增数据库数据之外,我们今天可以开始来简单的对我们的数据库数据进行一个简单的查询了!
首先我们先来了解一个简单的查询语句 select * from 表名 ('select'是感应输出,可以理解为是查询的意思 '*'代表所有 from后面接的是要查询的表的名称 )
如果我们不需要查询所有的信息,我们还可以限制表格的列名来进行查询:
select 列名,列名 from 表名
查询部分行和列我们可以通过where来进行限定
select 列名,列名 from 表名 where 限定条件
在查询结果集中使用别名
1:使用as关键字来改变结果集中的别名
例: select StudentName as 姓名 ,Birthday as 生日 from student
2:使用赋值运算符来改变结果集的别名
例: select 姓名= StudentName,生日 = Birthday from student
3:使用空格来改变结果集的别名
例: select StudentName 姓名 ,Birthday 生日 from student
使用别名前和使用别名后的结果如图所示:
使用后: 使用前:
查询 'null' 值
select * from 表名 where 列名 is null (查询null值,要使用is关键字)
is null的补充:
如果原有数据而后又被删除那么使用 is null 是查不到的 可以使用 '' 进行查询
例:select * from 表名 where 列名=''
is null 与 '' 的区别:
is null :从未录入过数据,没有地址
'' :录入过数据,而后被删除,是有地址的
在查询中使用常量列
select 列名 别名,列名 别名 ,'常量列名称' 别名 from 表名
查询返回限制的行数,使用top关键字
1:按照返回的个数进行限定 (查找符合条件的前五条数据)
select top 5 列名 as 别名,列名 as 别名 from 表名 where 条件
2:按照返回的百分数进行限定 (top recent关键字,查询符合条件的前百分之20的数据)
select top 20 rercent 列名 as 别名 from 表名 where 条件
在查询的结果集中进行排序,关键字是 order by (升序为 asc ,降序为 desc)
select 列名1,;列名2 from 表名 (根据列名1进行降序排列.默认为asc升序)
order by 列名1 desc
按照多列进行排序
select 列名1,;列名2 from 表名 (根据列名1进行降序排,列列名2进行升序排列.默认为asc升序)
order by 列名1 desc,列名2 asc