怎么查询数据库中重复字段的名字


1.利用sql语句筛选重复数据:1>先根据name名字进行分组,然后利用having 子句进行筛选,选出count(name)数量大于1的就是表中名字重复的记录

select name,COUNT(*) ct from bd_dicttype where dr=0 GROUP BY name HAVING  ct>1

 

having一般跟在group by之后,执行记录组选择的一部分来工作的。
where则是执行所有数据来工作的。
再者having可以用聚合函数,如having sum(qty)>1000

select name,COUNT(*) ct from bd_dicttype where dr=0 GROUP BY name HAVING  ct>1 ORDER BY name

注意当使用group by having子句时order by 放在最后使用

2.解决mysql sum求和返回null问题或IFNULL应用

问题描述:sum求和要求返回float(或 integer或double等)类型,但当数据库不存在任何符合求和记录时,sum返回null,报类型绑定错误异常(mybatis:

 

 

 

解决办法:IFNULL(SUM(transfer_amount),0),当数据库不存在任何符合求和记录时,sum返回0

例如:SELECT IFNULL(SUM(transfer_amount),0)   FROM cm_agent_withdrawal  WHERE  transfer_status in (1,2,3)

 

mysql IFNULL(expr1,expr2)

如果 expr1 不是 NULL,IFNULL() 返回 expr1,否则它返回 expr2。

IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM