sql知识03——检索语句

学生成绩表

学生层级表包含有三个列,对应内容分别是学号sNo、课程号cNo和成绩grade。在这里插入图片描述

检索单列和所有列

SELECT sNo FROM score(成绩);
得到表中学号的列的全部数据
SELECT cNo FROM score(成绩);
得到所有的关于课程号的数据
注意多条sql语句必须用英文的分号隔开,否则会报错。所有的空格都会被自动的忽略,但是仍要注意代码书写习惯。
sql语句不区分大小写,但为了代码的好看、方便阅读和调式,习惯上将所有列和表名称小写,sql的关键字大写。
对于MySQL4.1.1版本之前有些标识符是默认区分大小写的,但是MySQL4.1.1版本之后默认的标识符不在区分大小写

SELECT * FROM score(成绩);
通配符*是返回所有的列,可以用来检索名字未知的列。返回结果里的列的顺序一般是列在表定义中出现的顺出,但有时候不是这样的,表的模式的变化(增加或删除列)会导致顺序的变化。

检索不同的行

如上面的学生成绩表,一个学生参加不同的课有不一样的成绩,但是它们都是同一个学生考的分数。当我们想要每一个学生只给出任意一条成绩的时候。关键字distinct就发挥作用。SELECT DISTINCT 列名称 FROM 表名称。
SELECT DISTINCT sNo,cNo,grade FROM score(成绩);

限制结果

进行检索返回的结果是所有在表中符合检索语句要求的内容。而我们想要返回的是第一行或前几行的结果,可以使用limit子句
SELECT * FROM score(成绩)LIMIT 2;
检索出的结果中选前2个 符合条件的结果返回
SELECT * FROM score(成绩) LIMIT 5,1;
从整个表的第5行开始取1个符合条件的结果返回
** LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。注意检索的结果第一行的索引是行0而不是行1,当用limit 2的时候检索出来的是**

使用完全限定的表明检索

SELECT score(成绩).grade FROM score(成绩);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值