十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、建议以后给出列名、数据示例,这样可以直接粘贴运行 2、例程: SELECT DISTINCT 表1.列2,表1.列1 FROM 表1 WHERE 表1.列2 IN (SELECT 列1 FROM 表2)
成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的金坛网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
假设表名为test:
select * from (select *, concat(name,code) as __f from test order by date desc) __t group by __f;
在用select语句查询mysql数据库的时候,你可以加上distinct修饰符,这样就可以去掉好多重复的,比如
SELECT distinct(`lcontent`) FROM `caiji_ym_liuyan`
当然实际情况中的重复问题还有很多,需要自己的实际情况,构造相应的select语句。
delete from zhszty_ebook
where id not in(
select * from (select max(id) from zhszty_ebook group by url
) as tmp);------------mysql有个特性,对于表进行修改,删除操作,子查询不能和外层的查询的表一样,所以在加个select就可以了。其他数据库按照楼上的那个是没问题的
SQL语句:SELECT `lcontent` FROM `caiji_ym_liuyan`这样查询的时候就会有很多重复的记录
例子:
就会出现这样的重复
修改后的SQL语句:
SELECT distinct(`lcontent`) FROM `caiji_ym_liuyan`
查询结果:
在sal查询中这种方法是在文章的时候需要用到,这样就会防止重复的出现。
MYSQL里有五百万数据,但大多是重复的,真实的就180万,于是想怎样把这些重复的数据搞出来,在网上找了一圈,好多是用NOT IN这样的代码,这样效率很低,自己琢磨组合了一下,找到一个高效的处理方式,用这个方式,五百万数据,十来分钟就全部去除重复了,请各位参考。
第一步:从500万数据表data_content_152里提取出不重复的字段SFZHM对应的ID字段到TMP3表
1 create table tmp3 as select min(id) as col1 from data_content_152 group by SFZHM;
第二步:创建新表RES
1234 CREATE TABLE `res` (`id` int(11),`sfz` char(20)) ENGINE=MyISAM;
第三步:把TMP3表ID对应到data_content_152里需要提取的数据添加到RES表的SFZ字段
1 INSERT INTO res (sfz) SELECT sfzhm FROM data_content_152,tmp3 where data_content_152.id=tmp3.col1
至此,就在MYSQL里实现了,给数据表data_content_152完全删除重复数据,把去重复后的数据导入到RES表。