SQL查询数据的几大方法
有你,查询数据我什么都不怕。快快掌握!!
出大招的工具:
1.使用LIKE、BETWEEN、IN进行模糊查询
eg1:
SELECT * FROM Students
WHERE 姓名 like '张%'
eg2:
SELECT StudentID, Score FROM SCore WHERE Score
BETWEEN 60 AND 80
eg3:
SELECT SName AS 学生姓名,SAddress AS 地址
FROM Students
WHERE SAddress IN ('北京','广州','上海')
2.通配符
eg:
SELECT * FROM 数据表
WHERE 编号 LIKE '00[^8]%[AC]%'
3.SUM()
AVG()
MAX()、MIN()
COUNT()
eg1:
SELECT SUM(Score) AS 学号为23的学生总分
FROM Score
WHERE StudentID =23
eg2:
SELECT AVG(SCore) AS 及格平均成绩
FROM Score
WHERE Score >=60
eg3:
SELECT AVG(SCore) AS 平均成绩, MAX (Score) AS 最高分,
MIN (Score) AS 最低分
FROM Score
WHERE Score >=60
eg4:
SELECT COUNT (*) AS 及格人数
FROM Score
WHERE Score>=60
4.分组查询用法
SELECT …… FROM <表名>
WHERE ……
GROUP BY ……
eg:
SELECT COUNT(*) AS 人数, SGrade AS 年级
FROM Students
GROUP BY SGrade
eg2:
SELECT CourseID, AVG(Score) AS 课程平均成绩
FROM Score
GROUP BY CourseID
eg3:
SELECT CourseID, AVG(Score) AS 课程平均成绩
FROM Score
GROUP BY CourseID
ORDER BY AVG(Score)
5.多列分组
SELECT COUNT(*) AS 人数,SGrade AS 年级,SSex AS 性别
FROM StudentS
GROUP BY SGrade,SSex
ORDER BY SGrade
6.分组筛选
SELECT …… FROM <表名>
WHERE ……
GROUP BY ……
HAVING……
eg:
SELECT COUNT(*) AS 人数,SGrade AS 年级
FROM Students
GROUP BY SGrade
HAVING COUNT(*)>15
7.多表连接查询
SELECT ……
FROM 表1
INNER JOIN 表2
ON ……
等价于
SELECT ……
FROM 表1,表2
WHERE ……
eg:
SELECT Students.SName, Score.CourseID, Score.Score
FROM Students,Score
WHERE Students.SCode = Score.StudentID
三表内连接:
eg:
SELECT
S.SName AS 姓名, CS.CourseName AS 课程, C.Score AS 成绩
FROM Students AS S
INNER JOIN Score AS C ON (S.SCode = C.StudentID)
INNER JOIN Course AS CS ON (CS.CourseID = C.CourseID)
SELECT S.SName,C.CourseID,C.Score
FROM Students AS S
LEFT JOIN Score AS C
ON C.StudentID = S.SCode
SELECT 图书编号,图书名称,出版社名称
FROM 图书表
RIGHT OUTER JOIN 出版社表
ON 图书表.出版社编号 = 出版社表.出版社编号
SQL查询数据的几大方法的更多相关文章
- SQL反模式学习笔记18 减少SQL查询数据,避免使用一条SQL语句解决复杂问题
目标:减少SQL查询数据,避免使用一条SQL语句解决复杂问题 反模式:视图使用一步操作,单个SQL语句解决复杂问题 使用一个查询来获得所有结果的最常见后果就是产生了一个笛卡尔积.导致查询性能降低. 如 ...
- SQL查询数据并插入新表
SQL查询数据并插入新表 --如果接受数据导入的表已经存在 insert into 表 select * from tablename --如果导入数据并生成表 select * into 表 fro ...
- SQL查询数据总结
SQL查询数据 完整语法 Select [select选项] 字段列表[字段别名]/* from 数据源 [where条件子句] [group by子句] [having子句] [order by子句 ...
- python操作mongodb根据_id查询数据的实现方法
python操作mongodb根据_id查询数据的实现方法 python操作mongodb根据_id查询数据的实现方法,实例分析了Python根据pymongo不同版本操作ObjectId的技巧, ...
- Hibernate原生SQL查询数据转换为HQL查询数据方法
HQL形式:(构造方法不支持timestamp类型) public List<Device> queryByMatherBoardId(String matherBoardId) { St ...
- 基于Spring Boot,使用JPA动态调用Sql查询数据
在<基于Spring Boot,使用JPA操作Sql Server数据库完成CRUD>,<基于Spring Boot,使用JPA调用Sql Server数据库的存储过程并返回记录集合 ...
- 通过 sqldf 包使用 SQL 查询数据框
在前面的章节中,我们学习了如何编写 SQL 语句,在关系型数据库(如 SQLite 和MySQL )中查询数据.我们可能会想,有没有一种方法,能够直接使用 SQL 进行数据框查询,就像数据框是关系型数 ...
- Mybatis 传入多个参数查询数据 (3种方法)
第一种方案 DAO层的函数方法 public User selectUser(String name,String area); 对应的Mapper.xml <select id="s ...
- 20150221—LINQ to SQL 查询数据
LINQ to SQL 可以快捷的查询基于SQL的数据,直接在VS中包括基本的Object/relation映射器,O/R映射器可以快速的将基于SQL的数据源映射为CLR对象,之后就可以使用LINQ查 ...
随机推荐
- 最新hadoop+hbase+spark+zookeeper环境安装(vmmare下)
说明:我这里安装的版本是hadoop2.7.3,hbase1.2.4,spark2.0.2,zookeeper3.4.9 (安装包:链接:http://pan.baidu.com/s/1c25hI4g ...
- 强制SQL Server执行计划使用并行提升在复杂查询语句下的性能
最近在给一个客户做调优的时候发现一个很有意思的现象,对于一个复杂查询(涉及12个表)建立必要的索引后,语句使用的IO急剧下降,但执行时间不降反升,由原来的8秒升到20秒. 通过观察执行 ...
- Floyd算法的理解
- linux下查看进程占用端口和端口占用进程命令
Linux下查看进程占用端口: 查看程序对应进程号:ps –ef|grep 进程名 REDHAT :查看进程号所占用的端口号:netstat –nltp|grep 进程号 ubuntu:查看进程占用端 ...
- jQuery中$.extend
$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效. 如扩展$.fn.abc(),即$.fn.abc()是对jquery扩展了一个abc方法,那么后面你的每一个 ...
- Furatto – 轻量,友好的响应式前端开发框架
Furatto 是一个基于 Bootstrap & Foundation 的前端开发框架,用于快速开发网站.这个框架采用流行的扁平化设计和响应式设计.除了布局和网格之外,所有的主要元素都有预定 ...
- 10个实用的 CSS3 按钮效果制作教程
人们往往喜欢那些有更多互动元素的网站,因此现在很多设计师专注于他们的 CSS3 技能.这是因为 CSS3 技能可以帮助他们在很大的程度上实现所需的吸引力.这里分享的10个优秀的 CSS3 按钮效果制作 ...
- Jquery基本用法总结
选择器$("#mydiv") 通过ID$("p#myp") 选择id=myp 的所有p元素(组合型)$(".mydiv") 通过 class ...
- 《ASP.NET SignalR系列》第一课 认识SignalR
从现在开始相关文章请到: http://lko2o.com/moon 一.概述 ASP.NET signalr对ASP.NET开发者来说是一个新的程序库,它能让我们更加容易便捷地开发实时通信功能; s ...
- 使用Python将Excel中的数据导入到MySQL
使用Python将Excel中的数据导入到MySQL 工具 Python 2.7 xlrd MySQLdb 安装 Python 对于不同的系统安装方式不同,Windows平台有exe安装包,Ubunt ...