mysql语句2-单表查询
mysql 查询以及多表查询
以下所有表格样例都采用下边这个表格
mysql> select * from benet;
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 3 | a | 16 |
| 4 | b | 17 |
| 3 | a | 16 |
| 5 | b | 15 |
| 3 | b | 15 |
| 5 | b | 15 |
| 3 | b | 15 |
+------+------+----------+
1. 查询所有的内容。
select * from 表名称;
mysql> select * from benet;
2. 查询某个字段的内容
select 字段名1,字段名2,... from 表名称
mysql> select id from benet;
3.根据条件查询
例子1:
mysql> select * from benet where id=5;
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 5 | b | 15 |
| 5 | b | 15 |
+------+------+----------+
例子2 查询名字等于a的所有字段
mysql> select * from benet where name='a'; 注意:当条件内容是字符的时候,需要用引号引起来,但是数字不用。
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 3 | a | 16 |
| 3 | a | 16 |
+------+------+----------+
例子3:名字为b并且id大于3的内容
在多条件查询中 && 符号可以用and代替
mysql> select * from benet where name='b' && id > 3;
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 4 | b | 17 |
| 5 | b | 15 |
| 5 | b | 15 |
+------+------+----------+
例子4:名字为b并且id大于3并且年龄大于15
mysql> select * from benet where name='b' && id > 3 && nianling > 15;
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 4 | b | 17 |
+------+------+----------+
4.查询特定的参数
(1).disdinct参数:重复的结果只显示一次
例子:
mysql> select * from benet;
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 3 | a | 16 |
| 4 | b | 17 |
| 3 | a | 16 |
| 5 | b | 15 |
| 3 | b | 15 |
| 5 | b | 15 |
| 3 | b | 15 |
+------+------+----------+
我们查询id字段
mysql> select id from benet;
+------+
| id |
+------+
| 3 |
| 4 |
| 3 |
| 5 |
| 3 |
| 5 |
| 3 |
+------+
查询后的结果有些是重读的,我们可以让这些重复的结果只显示一次
mysql> select distinct id from benet;
+------+
| id |
+------+
| 3 |
| 4 |
| 5 |
+------+
(2). 在某个范围之间
格式:between....and....
例子:
use benet
create table benet (id int(3),name char(10),nianling int(3));
insert into benet values (1,'a',10), (2,'a',10), (3,'a',10), (3,'b',12),( 3,'b',14), (3,'b',15), (3,'b',16) ,(3,'c',18);
例子:
mysql> select * from benet where nianling between 12 and 16;
+------+------+----------+
| id | name | nianling |
+------+------+----------+
| 3 | b | 12 |
| 3 | b | 14 |
| 3 | b | 15 |
| 3 | b | 16 |
+------+------+----------+
(3)like '关键字' 根据关键字查找
% :表示任意长度的任意字符
_ : 表示单个字符
mysql> create table meinv (name char(30),nianling int(3));
insert into meinv values ('yangmi',25);
insert into meinv values ('gaoyuanyuan',25);
insert into meinv values ('yangziqiong',28);
查找y开头的名字
mysql> select * from meinv where name like 'y%';
+-------------+----------+
| name | nianling |
+-------------+----------+
| yangmi | 25 |
| yangziqiong | 28 |
+-------------+----------+
查找包含yuan的名字
mysql> select * from meinv where name like '%yuan%';
+-------------+----------+
| name | nianling |
+-------------+----------+
| gaoyuanyuan | 25 |
+-------------+----------+
查询某个字段为空值的数据。
mysql> create table abc (name char(20),nianling int(3));
mysql> insert into abc values ('a',10),('b',3),('c',null);
mysql> select * from abc;
+------+----------+
| name | nianling |
+------+----------+
| a | 10 |
| b | 3 |
| c | NULL |
+------+----------+
mysql> select * from abc where nianling is null;
查询年龄字段中为空的数据。
mysql> select * from abc where nianling is not null;
查询年龄字段中不为空的数据。
查询排序
order by 排序的一依据字段
例子1:根据nianling字段内容按照升序排列。
select * from abc order by nianling;
+------+----------+
| name | nianling |
+------+----------+
| c | NULL |
| b | 3 |
| a | 10 |
+------+----------+
例子2:根据nianling字段内容按照降序排列。
mysql> select * from abc order by nianling desc;
+------+----------+
| name | nianling |
+------+----------+
| a | 10 |
| b | 3 |
| c | NULL |
+------+----------+
显示查询后的部分结果limit
例子1:
mysql> select * from abc limit 2;
只显示结果的前两行
+------+----------+
| name | nianling |
+------+----------+
| a | 10 |
| b | 3 |
+------+----------+
聚合计算
依然采用上面的表作为例子
mysql> select sum(nianling) from abc; 求nianling字段所有数据的和
+---------------+
| sum(nianling) |
+---------------+
| 13 |
+---------------+
mysql> select max(nianling) from abc; 求nianling字段所有数据最大值
mysql> select min(nianling) from abc; 求nianling字段所有数据最少值
mysql> select avg(nianling) from abc; 求nianling字段所有数据的平均值
+---------------+
| avg(nianling) |
+---------------+
| 6.5000 |
+---------------+
mysql语句2-单表查询的更多相关文章
- mysql 基础入门 单表查询
单表查询 select 表头,表头 as 别名 ,表头(+-*/的运算) from table_a 1.条件查询 where + 条件 <> , != 不等于 = 等于,也可以表示字符串值 ...
- mysql 数据操作 单表查询 目录
mysql 数据操作 单表查询 mysql 数据操作 单表查询 简单查询 避免重复DISTINCT mysql 数据操作 单表查询 通过四则运算查询 mysql 数据操作 单表查询 concat()函 ...
- mysql 数据操作 单表查询 where 约束 目录
mysql 数据操作 单表查询 where约束 between and or mysql 数据操作 单表查询 where约束 is null in mysql 数据操作 单表查询 where约束 li ...
- mysql 数据操作 单表查询 group by 分组 目录
mysql 数据操作 单表查询 group by 介绍 mysql 数据操作 单表查询 group by 聚合函数 mysql 数据操作 单表查询 group by 聚合函数 没有group by情况 ...
- MySQL数据库之单表查询中关键字的执行顺序
目录 MySQL数据库之单表查询中关键字的执行顺序 1 语法顺序 2 执行顺序 3 关键字使用语法 MySQL数据库之单表查询中关键字的执行顺序 1 语法顺序 select distinct from ...
- MySQL数据库语法-单表查询练习
MySQL数据库语法-单表查询练习 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要是对聚合函数和分组的练习. 一.数据表和测试数据准备 /* @author :yinz ...
- MySQL学习9 - 单表查询
一.单表查询的语法 二.关键字的执行优先级(重点) 三.单表查询示例 1.where约束 2.group by分组查询 3.聚合函数 4.HAVING过滤 5.order by查询排序 6.limit ...
- mysql四-1:单表查询
一 单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二 关键 ...
- mysql数据库之单表查询多表查询
单表查询 前期表准备 create table emp( id int not null unique auto_increment, name varchar(20) not null, sex e ...
- Python、mysql四-1:单表查询
一 单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二 关键 ...
随机推荐
- Linux基础命令---htpasswd创建密码文件
htpasswd htpasswd指令用来创建和更新用于基本认证的用户认证密码文件.htpasswd指令必须对密码文件有读写权限,否则会返回错误码. 此命令的适用范围:RedHat.RHEL.Ubun ...
- Dubbo服务暴露延迟
Dubbo 2.6.5 版本以后,如果我们的服务启动过程需要warmup事件,就可以使用delay进行服务延迟暴露.只需在服务提供者的<dubbo:service/>标签中添加delay属 ...
- 重量级&轻量级
重量级 就是说包的大小,还有就是与个人项目的耦合程度,重量级的框架与项目耦合程度大些 代表EJB容器的服务往往是"买一送三",不要都不行 轻量级 就是相对较小的包,当然与项目的耦合 ...
- 简单的Spring Boot项目——实现连接Mysql数据库
一.创建Spring Boot项目 参考:使用IntelliJ IDEA创建简单的Spring Boot项目 二.数据库.表的创建 三.项目开发 3.1 pom.xml文件配置 <?xml ve ...
- Redis集群断电恢复
再集群整体断点或关闭后,默认启动集群后,会成为孤立的单点,需要删除每个节点的pid文件,node.conf.并将RDB和AOF文件移动出来,再挨个启动每个节点,并用create创建集群脚本,重新创建集 ...
- Mysql报错合集
目录 一.链接报错 客户端连接mysql出错 链接客户端出错 交互登陆mysql出现warning警告Using a password 导入数据到数据库报错ERROR 1050 登陆数据库提示-bas ...
- HDD深圳站:全生命周期赋能开发者,华为引领应用生态升级
12月14日,由华为开发者联盟主办的HDD(HUAWEI Developer Day)于深圳举行.此次HDD主论坛,围绕打造应用全生命周期服务,介绍了华为在创新孵化.开发测试.应用分发和运营增长阶段的 ...
- 解放生产力「GitHub 热点速览 v.21.51」
作者:HelloGitHub-小鱼干 解放生产力一直都是我们共同追求的目标,能在摸鱼的空闲把赚了.而大部分好用的工具便能很好地解放我们的生产力,比如本周特推 RedisJSON 不用对 JSON 做哈 ...
- CF999C Alphabetic Removals 题解
Content 给定一个长度为 \(n\) 的仅含小写字母的字符串,执行 \(k\) 次如下操作: 如果字符串中有 a 这个字母,删除从左往右第一个 a,并结束操作,否则继续操作: 如果字符串中有 b ...
- mysql数据库,当数据类型是float时,查询居然查询不出数据来
mysql数据库,当数据类型是float时,查询居然查询不出数据来,类似如下: 以后mysql数据库不用float类型,而double类型可以查得出来.