热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

sql取一个月日期去掉周末的所有日期_从零学会SQL简单查询第二关作业

练习1:查询学生表在school数据库,点查询右键-新建查询,输入SQL查询语句:(*是查询所有列)selec

练习1:查询学生表

在school数据库,点查询/右键-新建查询,输入SQL查询语句:(*是查询所有列)

select *

from student

运行,得到如下查询结果:

c07d5a44304e40358aac0d90eeea54a4.png

练习2:理解sql运行顺序

sql运行顺序是:先顺次运行除select子句之外的sql语句,最后运行select语句。

选取姓名列里值为猴子的行:

468d7406a5755d8c631c8c36b3c07c2d.png

注意:返回结果中列的顺序是由select子句中列名的次序决定的,比如,原表中“学号”是第一列,而select子句中把“姓名”放在前面,则上面的返回结果第一列就是“姓名”。反之,则是下面显示的:

7f521c548bbde65f7734dacf53724ab8.png

练习3: 算术运算符和比较运算符

运算符可为sql指定复杂的查询条件。

算术运算符:+ - * /(加,减,乘,除)

比较运算符&#xff1a;&#61;相等&#xff0c;<>不等于&#xff0c;>大于&#xff0c;>&#61;大于等于&#xff0c;<小于&#xff0c;<&#61;小于等于

&#xff08;注意不等于的表达符号是<>&#xff09;

3.1 百分比成绩&#xff1a;

4229cd226c2e6edc8d0cc5a00dfb9933.png

3.2 在学生表中查找姓名为猴子的学生及其学号

45122b05f34dce9cc21a26a71c2b17e4.png

3.3查询成绩不及格的学生学号和成绩&#xff1a;

fbaaab064987e1d1c8719255306d6610.png

注意&#xff1a;写完一条sql语句&#xff0c;以英文分号结束。如果子句中写入了分号&#xff0c;则会出现错误的结果&#xff0c;比如&#xff0c;我在练习时&#xff0c;在from子句结束时写了分号&#xff0c;则会出现下面的结果&#xff0c;即没有执行where子句。

0a1dd214e8f8014fa65e20abc176f1e4.png

3.4 查询出生日期在1990-01-01之的学生姓名和出生日期

2e8628ffb225eb82bee25744699d9bee.png

3.5 查询教师姓名是Null的教师姓名&#xff1a;

cc7c991455e25a792d3e9d8bbc7ff4b2.png

注意这里要用“is”&#xff0c;不能用“&#61;”&#xff0c;如果输入“&#61;”&#xff0c;则查询不出任何结果&#xff1a;

fdf8e9b8eb396f0906c7683633e4b1ac.png

3.6 查询不是null的教师姓名&#xff1a;

4c357c96746b5bb1cff2b050e44da53f.png

练习4 复杂的查询条件

逻辑运算符&#xff1a;not--否定某一条件&#xff0c; and--并且&#xff0c; between--范围查询&#xff0c; or--或者&#xff0c; in--or的简单写法。

4.1 not运算符

ac4ac35e93b215e46ba0bad942826ad4.png

相当于&#xff1a;

7c50604419942ebd5e68c4fffd7840aa.png

4.2 and运算符

207dfdc05829d7b7c28b590246dfa9c6.png

4.3 查询性别是男&#xff0c;并且名字是猴子或者马云的学生&#xff1a;

e0b975d5f6968e611969ccfda1aea7a5.png

其中的“&#61;”不能写成“is”&#xff0c;否则报错&#xff1a;

65529ad9c1bb5fffbb03e75a05186cd9.png

注意&#xff1a;马云前面必须写“姓名&#61;”不能写成&#xff1a;姓名&#61;&#39;猴子&#39; or &#39;马云&#39;&#xff0c;否则不会选择出姓名是马云的学生&#xff1a;

75408eeeb1054bf0cc05433deda614e6.png

and前后的条件书写顺序对查询结果没有影响&#xff1a;

192a064521614f559a87ce05f2a68fa4.png

注意&#xff1a;姓名必须用括号括起来&#xff0c;表示or运算符的运算顺序优先于and运算符&#xff0c;是一个整体&#xff0c;从而保证逻辑正确。去掉括号会造成如下结果&#xff1a;

84a4bf6684ca90805ad5de682ffc65ce.png

如果把student中马云的性别改为女&#xff0c;则出现如下结果。可见&#xff0c;and运算符是把它后面和前面的条件进行了逻辑与运算&#xff0c;而or又对这个结果和or前面的部分进行了逻辑或运算。

daa1d94d9fff0964dd360a56ed70ed27.png

4.4 between

48a0de66d55d36c7d3ec0070c428814b.png

相当于&#xff1a;&#xff08;即between是包含括号边界60&#xff0c;90的&#xff09;

c658bcf49786a676e65f33fabc5dccb2.png

4.5 or 或者

8b3eb8fa550abe691a04c5c815ded477.png

4.6 in 是or的简便写法

a9f69e7678e8e2d19fbf2881e1f77ae2.png

in前面加not&#xff0c;进行否定&#xff1a;

93e900f82d887779947a567214a31693.png

可以用in把4.3 的sql语句改写为&#xff1a;

bdaa5216115fb124c79ade99b9ca703b.png

练习5 字符串模糊查询&#xff1a;查找学生

5.1 查询姓“猴”的学生名单&#xff1a;

8cb7c3a41bf09228b800c091b82db8f4.png

5.2 查询姓名中最后一个字是“猴”的学生名单

6fd0bb1eb956da10e409652b33fd0707.png

5.3 查询姓名中带“猴”的学生名单

e273b94acad81110f2e0fc0f62109b5a.png

练习题&#xff1a;sqlzoo

1,

18f876d219b2711325a33cc27fb01d77.png

2&#xff0c;

b250887a4952e15b10cd1b47309658fc.png



推荐阅读
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 本文介绍了在SQL中查询分组后每组行数的统计方法。通过使用count()函数和GROUP BY子句可以统计每组的行数,但是如何统计所有组的行数呢?本文提供了一种实现方法,并给出了相应的SQL查询语句。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 基于事件驱动的并发编程及其消息通信机制的同步与异步、阻塞与非阻塞、IO模型的分类
    本文介绍了基于事件驱动的并发编程中的消息通信机制,包括同步和异步的概念及其区别,阻塞和非阻塞的状态,以及IO模型的分类。同步阻塞IO、同步非阻塞IO、异步阻塞IO和异步非阻塞IO等不同的IO模型被详细解释。这些概念和模型对于理解并发编程中的消息通信和IO操作具有重要意义。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 本文详细介绍了在ASP.NET中获取插入记录的ID的几种方法,包括使用SCOPE_IDENTITY()和IDENT_CURRENT()函数,以及通过ExecuteReader方法执行SQL语句获取ID的步骤。同时,还提供了使用这些方法的示例代码和注意事项。对于需要获取表中最后一个插入操作所产生的ID或马上使用刚插入的新记录ID的开发者来说,本文提供了一些有用的技巧和建议。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
author-avatar
mobiledu2502912637
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有