|
| 1 | +*********************************************************************************************** |
| 2 | +1.判断数据是否重复: |
| 3 | +SELECT user_name , over, count(*) FROM user1_test GROUP BY user_name, over HAVING count(*)>1 |
| 4 | + |
| 5 | +2.删除重复数据,对于相同数据保留ID最大的 |
| 6 | +DELETE * |
| 7 | +FROM user1_test a JOIN( |
| 8 | +SELECT user_name,COUNT(*),MAX(id) AS id |
| 9 | +FROM user1_test |
| 10 | +GROUP BY user_name HAVING COUNT(*) > 1 |
| 11 | +) b ON a.user_name = b.user_name |
| 12 | +WHERE a.id < b.id |
| 13 | + |
| 14 | +3.将表中查询的数据再次插入到表中 |
| 15 | +INSERT INTO xmss_wh(XM_ID,WH_ID,YJ,SH,SHR,FJ_NAME,FJ_ID) |
| 16 | +SELECT XM_ID,WH_ID,YJ,SH,SHR,FJ_NAME,FJ_ID FROM xmss_wh WHERE ID=28; |
| 17 | + |
| 18 | +sql中的group by 用法解析: |
| 19 | +Group By语句从英文的字面意义上理解就是"根据(by)一定的规则进行分组(Group)"。 |
| 20 | +它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理。 |
| 21 | +--注意:group by 是先排序后分组; |
| 22 | +--举例子说明:如果要用到group by 一般用到的就是"每这个字" 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术 |
| 23 | +select DepartmentID as '部门名称', |
| 24 | +COUNT(*) as '个数' from BasicDepartment group by DepartmentID |
| 25 | + |
| 26 | +这个就是使用了group by +字段进行了分组,其中我们就可以理解为我们按照了部门的名称ID |
| 27 | +DepartmentID将数据集进行了分组;然后再进行各个组的统计数据分别有多少; |
| 28 | +如果不用count(*)等类似函数 |
| 29 | +select DepartmentID,DepartmentName from BasicDepartment group by DepartmentID |
| 30 | +将会报错 |
| 31 | + |
| 32 | + |
| 33 | +*********************************************************************************************** |
0 commit comments