mysql 单表字段_mysql 单表下的字段操作_查询

查询的纪律

查询语句限制条件越多,查询局限越小;

1.整个表

Select * From 库名.表名

2.整个表的某字段内

Select id From 库名.表名

3.整个表某字段的局限内

Select * From 库名.表名 Where id<50;

4.整个表某字段的局限内在限制条目数

Select * From 库名.表名 Where id<50 Limit 0,10;

总结:

局限的巨细对照关系如下

1.>2.>3.>4.

Select指定表和字段查询局限

指定整个表

* 是通配符;

Select * From 库名.表名

83f1be33c41325fce9b652bbb573882c.png

指定某几个字段

Select id,name From 库名.表名

Where指定字段查询局限

Where 后面可以添加许多查询条件,常用的查询条件如下,在现实中详细使用哪种看应用场景;

运用关系运算符确定局限查询

操作符

形貌

实例

=

等号,检测两个值是否相等,若是相等返回true

(A = B) 返回false。

<>, !=

不即是,检测两个值是否相等,若是不相等返回true

(A != B) 返回 true。

>

大于号,检测左边的值是否大于右边的值, 若是左边的值大于右边的值返回true

(A > B) 返回false。

<

小于号,检测左边的值是否小于右边的值, 若是左边的值小于右边的值返回true

(A < B) 返回 true。

>=

大于即是号,检测左边的值是否大于或即是右边的值, 若是左边的值大于或即是右边的值返回true

(A >= B) 返回false。

<=

小于即是号,检测左边的值是否小于于或即是右边的值, 若是左边的值小于或即是右边的值返回true

(A <= B) 返回 true。

Example:

Select * From 库名.表名 Where id<50;

In 包罗判断查询

select * from secondweek.test1_tb where id in(1,2);

59d6e163d1030f317cdc90a22ede9c64.png

id not in(1,2)不查括号内里包罗的

select * from secondweek.test1_tb where id not in(1,2);

字符串包罗 example:

select * from secondweek.test1_tb where addr in("北京");

d6a268325b4a9210263e50cf3a4eaf28.png

Between X and Y相符延续数值局限内查询

select * from secondweek.test1_tb where id between 1 and 3;

9469915b829f71d34ee0fb40d29bc963.png

Is NULL 空值判断查询

Mysql列中的空值(NULL)不同于0,也不同于空字符串;

可以使用 Not 关键字;

select * from secondweek.test1_tb where regTime is Null;

1800cfa6966aa2f28aa7a07c42b2a4b7.png

Distinct 去重查询

假设有多个重复,那么他留存唯一的尺度是什么?留第一条;

使用distinct下令时需要放在查询条件的开头;

原本表结构:

837f1315f8e6d5954a77b0abc3409810.png

select distinct password,email from secondweek.test1_tb;

去重后的表结构:

若是是使用了多个列字段,就凭据一行与一行来对照,不是单个;若是只是单列去重,那么和Group By 字段名;没啥区别;

f529d7b234e7e994ad5103dd86842985.png

Group By 单列去重

单字段去重效果好,由于Group By sex, sex列就作为分组尺度,男为一组,女为一组,效果就会只显示男、女两组。可以作为单列去重使用;

原表:

1d462986a4a058740ea2f8ad02b0a146.png

去重后:

select password,email from secondweek.test1_tb Group By password;

8e2a34be67d834d6834cdf2d89490163.png

Distinct 去重后:

select Distinct password,email from secondweek.test1_tb;

ab0c036c21e14fba55ae9f3dab7c7bae.png

Group By连系聚合统计函数\Having查询

Group By 字段; 这列字段就会被作为分组,不能有重复;分组之后可以求字段中最大、最小、平均值、每组数目…

example:

select Count(sex),sex from secondweek.test1_tb Group By sex;

5616a1d638fa1224220cfc85469b6be9.png

连系Having 关键字:

Having 和 Where类似都是对查询效果举行过滤用;

区别在于,Having后面可以随着聚合函数,而Where不能;

Having一样平常都和Group By一起使用,对分组后的效果举行过滤;

select Avg(salary),sex from secondweek.test1_tb Group By sex having Avg(salary)>=5900;

df8b6239d290384e2102852f2fc87c90.png

Like 模糊查询

模糊查询支持使用通配符;常用通配符有*、%、_、…

% example:

% 百分号通配符可以匹配随便长度的字符,包罗空字符串;

# 知道牢固头

select * from secondweek.test1_tb where username Like "zhao%";

# 知道牢固尾

select * from secondweek.test1_tb where username Like "%qi";

594356a914c4a88ba14356825a826706.png

模糊搜索example:

897d9ba633ea37d4a8b98c737c1bac68.png

_ 单个字符匹配example:

_下划线通配符只能匹配单个字符,要想匹配多个,就得用多个下划线;

select * from secondweek.test1_tb where username Like "lis_";

8ab6e5bf5a05990be07b89e8aee238dc.png

And 并列多条件查询

Select * From 库名.表名 Where id<50 and sex=0;

Or 或条件查询

Select * From 库名.表名 Where name="lisi" or sex=0;

Limit 限制查询效果的数目

Select * From 库名.表名 Where id<50 Limit M[,N];

# M 是偏移变量,默认从0最先,若是指定查询效果为 lisi,wangwu,zhaoliu,chenqi, lisi是0,若是M=2,就从zhouliu最先;

# N 是纪录数,示意显示出几条数据;

Select * From 库名.表名 Where id<50 Limit 0,10;

5914b470439d95741b0b44ee2d50cd75.png

复合条件查询

凭据应用场景,将上述查询条件语句举行嵌套、并列一起使用,叫做复合条件查询;

# 聚合(统计)函数 > 枚举一些常用聚合函数;一样平常和Order by 连系使用;

AVG() — 求某一列平均值

COUNT() — 统计总行数

SUM() — 盘算列总和

MIN() — 求某一列的最小值

MAX() — 求某一列的最大值

# Order By对查询效果排序 > 先确定以某列为基准举行排列;

可以使用Order By将某列定为基准,然后排序;

ASC 升序

select * from secondweek.test1_tb Order By salary ASC;

d0f503fa43709eaa8ab7d8252b9e04d7.png

DESC 降序

select * from secondweek.test1_tb Order By salary DESC;

a40fb9702f178f0aaf0ae9a12599ed64.png

# 查询时使用别名 > as 可以省略;

为表取别名

查询时使用表名的别名,可以省略写全称的贫苦,在多表操作的时刻需要写多个表名时,有点应用场景;

select id,username,password from secondweek.test1_tb as tb where tb.id > 2;

# or

select id,username,password from secondweek.test1_tb tb where tb.id > 2;

e3013f63479e7267dd56452b4b2b493c.png

为字段取别名

原本查询出来的列名都是建立时界说好的,查询时可以使用别名展示出来;

表原来结构:

8301046bfd5e637aacabd3bba6bf6181.png

select id,username myuaer,password as ps from secondweek.test1_tb;

修改成别名展示:

NfQfiy.png@thumb

18336de26137694c8ca155addf157b03.png

原文链接:https://www.cnblogs.com/mysticbinary/p/12865746.html

本站声明:网站内容来源于网络,若有侵权,请联系我们,我们将及时处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值