一道数据库面试题求高手解答 用SQL语句删除除了id不同,其他都相同的学生表信息。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那就把学生的其他信息来作为依据进行删除操作啊比如name=?,age=?等等 通用写法:delete from 表 where 不同的字段 not in(select max(不同的字段) from 表 group by 相同的字段) delete from <table_name> wehere id not in (select max(id) from <table_name> group by <除id外的其他字段> ) 楼上正解 我思考了半天终于想通了 楼上的意思是先将表中的数据按除ID之外的所有列进行分组 之后每个组的数据就是除了ID都相同的数据了 这样每个组只需保留一条记录即可 这是使用max(id)或者min(id)都可以 总之只要从每组取出一个id即可 然后将整个表中的记录id不在所选择出的id之列的全部删除即可 看来我得好好学习sql了 加max或者min是什么意思啊,不加难道不可以么 Java Eclipse 的使用请教 宜搜笔试题 java编程思想要看几天 指路? 两个Frame里,如何设置关系 亲爱的你在哪里? 如何统计一个目录下所有class文件总程序行数? java怎么用? JBuilder的简单问题,大家来抢分,在线等待...... 老哥们帮忙呀!请看这里!我的EMIAL:[email protected] 一定答谢! Spring mvc 初级问题 [求助]java的内存问题
比如name=?,age=?等等
(select max(不同的字段) from 表 group by 相同的字段)
看来我得好好学习sql了