mysql distinct 总是1_sql distinct 去重复 (mysql)

DISTINCT 去重复

(运动扭伤腰。。。悲伤。。。 (▼ _ ▼) )

首先,例如我们的表:

2f1121b7bad2497229325925cbb8c067.png

首先观察表:

其中第二行和第三行和第八行的name1的只是重复的,但第八行的age1确是12,与第二行和第三行不同。

第五行和第六行是相同的重复数据。

在此我们先使用如下命令:

SELECT DISTINCT name1 FROM table1

发行结果如下:

b2dd746688a8481d1d1efc0ae4448f57.png

在这里去除了重复的name1的值,那么在此我们得知到:DISTINCT 的作用是去除重复,那么在这里我们还想得到age1的值该怎么办?

那我们试试以下语句:

SELECT DISTINCT name1,age1 FROM table1

在 DISTINCT 后面的name1,age1的作用是去除name1和age1一起 的重复,什么叫做两者一起呢?我们先来看运行结果:

4854fd89dcd8bf82f59a2d211e77d1e8.png

是否发现bb同样的name1值输出了两次;在此我们要注意以下,虽然bb相同但是age1的值一个是11一个是12;在此 DISTINCT name1,age1 是去掉某一行name1和age1都相同的元素,那么bb,11和bb,12不同,所以则被保留下来了。

在此要注意的一件事情是,不能够如下打命令:

SELECT DISTINCT name1,DISTINCT age1 FROM table1

或者

SELECT name1,DISTINCT age1 FROM table1

因为 DISTINCT 只能运行出现在开头,不能放在后面.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值