mysql 找出重复数据
发表于|更新于|mysql
1 | SELECT * , count(openid) as count FROM `cul_logindata` GROUP BY `openid` HAVING count>1 |
文章作者: developer
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Dev!
相关推荐
2020-06-11
记录一次 mysql 从 备份的data目录恢复
开始将整个mysql的data目录备份了后来的启动顺序 重新安装了同一个版本的mysql,并且启动’ 停止mysql 复制了mysql test performance_schema以外的所有文件夹.ib_logfile*(事务日志),ibdata1(共享表空间)到新的data 重新启动
2017-08-30
mysql alter 修改字段
修改字段长度1alter table news modify column title varchar(130); 增加unique唯一索引1ALTER TABLE form_user ADD UNIQUE(`openid`)
2018-01-08
mysql cpu过高的问题检查
找到配置文件 1sudo find / -name my.cnf 进入mysql执行show processlist;反复执行就可以看到当前进程,反复出现的语句就是因为速度太慢才出现的 参考数据http://www.jb51.net/article/30495.htmhttps://segmentfault.com/q/1010000001735963
2018-09-19
mysql for update lock 悲观锁 解决并发问题
mysql常用的锁有for update 和 for update in share mode两种 锁的区别 for update 我认为是悲观锁,其他事务读会被阻塞等待,写被禁止,且不准多次加锁 for update in share mode 读取不等待,写入会被禁止,可被多次加锁 in share mode的问题如果两个事务对同一行数据加锁很容易导致,两个事务都更新失败 使用场景基于以上特点介绍,in share mode可以用于两个表关联时,保护主表数据不被修改,for update更适合保护单表单行数据的正确性,适合投票、提现等场景 测试验证以下代码验证for update的作用表maxcount中marks初始为8,每次减1,当他大于0时,将当时数据保存,类似于抽奖中控制最大奖品数的问题tp中lock(true)会默认使用for update锁,我们每次测试修改代码即可 并发配置使用ab发400并发 1ab -n 400 -c 400 http://127.0.0.1/ 测试代码1234567891011121314151617$marks = -1;Db::tra...
2019-04-15
mysql replace 语句
原文地址https://www.cnblogs.com/sunss/p/4493803.htmlhttps://www.cnblogs.com/c-961900940/p/6197878.html 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。 否则,直接插入新数据。 注意插入数据的表必须有主键或者是唯一索引!否则的话,replace into 会直接插入数据,这将导致表中出现重复的数据。
2019-11-23
mysql max min 必须放在-条件之后
1SELECT *,max(marks) FROM `form_log` where reason = 'astrazeneca' group by userid
公告
This is my Blog