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 限制条数 二 关键 ...
随机推荐
- zabbix之监控MySQL
#:先配置MySQL的主从 #:安装Percona Monitoring Plugins (地址:https://www.percona.com/downloads/)#:我安在从库,监控哪个就安哪个 ...
- 接口测试 python+PyCharm 环境搭建
1.配置Python环境变量 a:我的电脑->属性->高级系统设置->环境变量->系统变量中的PATH变量. 变量名:PATH 修改变量值为:;C:\Python27 ...
- Orcale 数据加载
CSV 逗号分隔值格式文件 1,若要加载的文件不是CSV格式,可以修改数据文件,用分隔符来替换逗号:也可以修改控制文件,将FIELDS TERMINATED BY的值改为实际的分隔符. eg, 要向s ...
- Java虚拟机(JVM)以及跨平台原理
相信大家已经了解到Java具有跨平台的特性,可以"一次编译,到处运行",在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的. 那么,跨平台 ...
- 【Spring Framework】12种spring中定义bean的方法
前言 在庞大的java体系中,spring有着举足轻重的地位,它给每位开发者带来了极大的便利和惊喜.我们都知道spring是创建和管理bean的工厂,它提供了多种定义bean的方式,能够满足我们日常工 ...
- Java Bean 与Spring Bean 的区别
什么是JavaBean: JavaBean是一种JAVA语言写的可重用组件.JavaBean符合一定规范写的Java类,是一种规范.它的方法命名,构造以及行为必须符合特定的要求: 1.所有属性 ...
- 两大js移动端调试神器 / 调试工具分享 !
分享大家一个CDN网站:https://www.bootcdn.cn/ eruda 移动端网页调试工具的使用: <script src="https://cdn.bootcdn.net ...
- Table.RowCount行列计数…Count(Power Query 之 M 语言)
数据源: 任意五行两列 目标: 计算行数(包括空行) 操作过程: [转换]>[对行进行计数] M公式: = Table.RowCount( 表 ) 扩展: 对表中列进行计数:= Table.C ...
- int i=i++;和i=++i;和i++
1.int i=i++; 2.i=++i; 3.i++
- CF1057B DDoS 题解
Content 有一个长度为 \(n\) 的数列 \(a_1,a_2,...,a_n\),求出满足 \(\sum\limits_{i=l}^r a_i>100\times(r-l+1)\) 的区 ...