Mysql | 总结 | 常用的查询语句(单表查询)
1. 查询单表全部
select* from 数据表名;
2. 查询单表中一个或者多个字段
select 字段1,字段2 from 数据表名;
3. 查询单表中的指定信息
select* from 数据表名 where 属性= .....;
查询所有红色的产品号
SELECT ProductNumber
from SalesLT.Product
WHERE Color = 'Red'
4. 带有 IN 关键字的查询
Select* from 数据表 where 字段 [NOT] IN (字段值1,字段值2…字段值n);
<注:最适于数组作为查询条件,即:in (数组数据)>
5.带BETWEEN and 的范围查询
select * from 数据表 where 字段 [NOT] BETWEEN 取值1 and 取值2;
6. 带like的字符匹配查询
select * from 数据表 where 属性 like '%SQL%';//查询属性中包含SQL字符的数据
---查询产品名称中包含'Road'关键字的。
SELECT Name
FROM SalesLT.Product
WHERE Name like '%Road%'
GO

select * from 数据表 where 属性 like 'a%b';// //查询属性中以a开头以b结尾的字符串的数据
select * from 数据表 where 属性 like 'm_n';//查询属性中以m开头以n结尾的3个字符的数据,中间的‘_’只能代表一个字符
7.带AND的多条件查询
select* from 数据表名 where 属性= ..... AND 属性=......;
--查询成本价介于200到300之间的产品名称和成本价。
SELECT Name,StandardCost
FROM SalesLT.Product
WHERE StandardCost >= 200 and StandardCost <= 300
GO

8. 带OR的多条件查询
select* from 数据表名 where 属性= ..... OR 属性=......;
--查询LastName是Li、Liu、Lang的客户姓名
SELECT concat(FirstName ,' ', LastName)as Name
FROM SalesLT.Customer
WHERE LastName = 'Li' or LastName = 'Liu' or LastName = 'Lang'
GO

9.用DISTINCT关键字去除结果中的重复行
查询Address表中,不同的国家和省份。
Select DISTINCT CountryRegion,StateProvince
from SalesLT.Address
GO

10. 用ORDER BY 关键字对查询结果排序
查询所有产品,包括产品名称、销售价、成本价和利润(销售价与成本价之差),并按利润从高到低的顺序排序
select Name,ListPrice,StandardCost,ListPrice-StandardCost as profit
from SalesLT.Product order by profit desc

11. 用GROUP BY关键字分组查询
(1) 用GROUP BY关键字分组查询
(2) GROUP BY 关键字与 GROU_CONCAT函数一起使用
(3)按多个字段进行分组
12. 用LIMIT限制查询结果的数量
样例:
--1.查询所有客户,将Title、FirstName和LastName合并成一列,之间用空格分开
SELECT CONCAT(Title,' ',FirstName,' ',LastName) AS name
FROM SalesLT.Customer
GO

--5. 查询销售价格小于100的产品号和销售价格
SELECT ProductNumber,ListPrice
from SalesLT.Product
where ListPrice < 100
GO

--9. 查询已停止销售(SellEndDate不为空)的产品名称,以及产品的销售天数。 函数处理
SELECT Name,DATEDIFF(day,SellStartDate,SellEndDate) as Day
FROM SalesLT.Product
WHERE SellEndDate is not null
GO

-- 10. 查询客户所在公司名称中包含bike或bicycle的用户名和公司名。
SELECT concat(FirstName ,' ', LastName)as Name,CompanyName
FROM SalesLT.Customer
WHERE CompanyName like '%bike%' or CompanyName like '%bicycle%'
GO

--11. 查询分类号(ProductCategaryID)是18,红色的产品编号,并按尺寸从小到大的顺序排列
SELECT ProductNumber
from SalesLT.Product
WHERE Color = 'Red' and ProductCategoryID = 18
order by Size
GO

--12. 汇总所有订单的小计值、税款、运费和总金额。 Sum求和
SELECT SUM(SubTotal ) as SubTotal ,SUM(TaxAmt)as TaxAmt,
SUM(Freight) as Freight,SUM(TotalDue) as TatalDue
from SalesLT.SalesOrderHeader
go

--13. 查询累计订单总金额超过10万的客户号和总金额。
SELECT CustomerID ,SUM(SubTotal) as SubTotal
from SalesLT.SalesOrderHeader
where SubTotal>100000
group by CustomerID
go

Mysql | 总结 | 常用的查询语句(单表查询)的更多相关文章
- mysql——查询语句——单表查询——(概念)
一.基本查询语句 select的基本语法格式如下: select 属性列表 from 表名和视图列表 [ where 条件表达式1 ] [ group by 属性名1 [ having 条件表达式2 ...
- mysql——查询语句——单表查询——(示例)
一.基本查询语句 select的基本语法格式如下: select 属性列表 from 表名和视图列表 [ where 条件表达式1 ] [ group by 属性名1 [ having 条件表达式2 ...
- MySQL之单表查询 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 使用正则表达式查询
MySQL之单表查询 阅读目录 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER B ...
- SQL基本查询_单表查询(实验二)
SQL基本查询_单表查询(实验二) 查询目标表结构及数据 emp empno ename job hiedate sal comn deptno 1007 马明 内勤 1992-6-12 4000 2 ...
- SQL基础--查询之一--单表查询
SQL基础--查询之一--单表查询
- sql语句-单表查询
一:单表查询 CREATE TABLE `Score`( `s_id` ), `c_id` ), `s_score` ), PRIMARY KEY(`s_id`,`c_id`) ); ); ); ); ...
- MySQL数据查询之单表查询
单表查询 简单查询 - 创建表 DROP TABLE IF EXISTS `person`; CREATE TABLE `person` ( `id` ) NOT NULL AUTO_INCREMEN ...
- MySQL简单查询和单表查询
MySQL记录操作 概览 MySQL数据操作: DML 在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括 使用INSERT实现数据的插入 UPDATE实现数据的更新 使用 ...
- Hibernate中的HQL的基本常用小例子,单表查询与多表查询
<span style="font-size:24px;color:#3366ff;">本文章实现HQL的以下功能:</span> /** * hql语法: ...
随机推荐
- 剑指Offer:旋转数组的最小数字【11】
剑指Offer:旋转数组的最小数字[11] 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素. 例如数组{3,4 ...
- Gym - 101147E E. Jumping —— bfs
题目链接:http://codeforces.com/gym/101147/problem/E 题意:当人在第i个商店时,他可以向左或向右跳di段距离到达另一个商店(在范围之内),一个商店为一段距离. ...
- nyoj 1030 hihocoder 1338
题目链接1: 点这里打开. 题目链接2: 点击打开链接 思路:dp,dp[i][j] 表示某个人在区间 i,j上的得分. sum数组表示前 n 项和, num 数组用来存输入的数字. 因为取数字是 ...
- [APIO 2014] 序列分割
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=3675 [算法] 首先 , 我们发现将一段序列切成若干段所获得的收益与顺序无关 于是我 ...
- Markdown Reader 插件改造
Markdown Reader 是一款比较好用的浏览markdown文件的chrome插件 插件地址:https://chrome.google.com/webstore/detail/markdow ...
- bzoj 4398 福慧双修——二进制分组
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4398 如果枚举1号点走哪些点出去,就从那些点出发跑多源最短路即可.最短路不会重复经过一条边. ...
- samba 安装运行
samba 安装步骤 1.若之前有安装过相关软件包,先卸载之:sudo apt-get autoremove samba samba-commonsudo apt-get autoremove sys ...
- Product it again
题意:求解 $$\prod_{1 \leq i \leq n} \prod_{1 \leq j \leq m} {(i,j)}$$ 解法: 满脑子的反演 考虑对于第一个质数 $p$ 的贡献为 $p^{ ...
- shell的split生成的文件按规律命名及添加扩展名
可以参考 用shell切分文件--split shell下的split命令主要用于分割一些大文件用的,比如经常要用到将一个几十万行的TXT分割为多少行一个的文件,非常有用,唯一坑爹的是,切割后的文件不 ...
- C - Present
C - Present Time Limit:2000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64u Submit ...