发布网友 发布时间:2023-10-03 08:27
共5个回答
热心网友 时间:2024-04-03 15:36
代码如下:
select * from tbl_DPImg where ID in (select min(ID) from tbl_DPImg group by DPID)
处理后结果为:
查找表中多余的重复记录,重复记录是根据单个字段(teamId)来判断
select * from team where teamId in (select teamId from team group by teamId having count(teamId) > 1)
删除表中多余的重复记录,重复记录是根据单个字段(teamId)来判断,只留有rowid最小的记录
delete from team where
teamName in(select teamName from team group by teamName having count(teamName) > 1)
and teamId not in (select min(teamId) from team group by teamName having count(teamName)>1)
扩展资料
数据记录筛选:
sql="select * from 数据表 where字段名=字段值 order by字段名[desc]"(按某个字段值降序排列。默认升序ASC)
sql="select * from 数据表 where字段名like '%字段值%' order by 字段名 [desc]"
sql="select top 10 * from 数据表 where字段名=字段值 order by 字段名 [desc]"
sql="select top 10 * from 数据表 order by 字段名 [desc]"
sql="select * from 数据表 where字段名in ('值1','值2','值3')"
sql="select * from 数据表 where字段名between 值1 and 值2"
参考资料来源:百度百科:SQL语句大全
热心网友 时间:2024-04-03 15:36
使用分析函数row_number() over (partiion by ... order by ...)来进行分组编号,然后取分组标号值为1的记录即可。目前主流的数据库都有支持分析函数,很好用。
其中,partition by 是指定按哪些字段进行分组,这些字段值相同的记录将在一起编号;order by则是指定在同一组中进行编号时是按照怎样的顺序。
示例(SQL Server 2005或以上适用):
select s.*
热心网友 时间:2024-04-03 15:37
如果仅仅只是查询出来去从,那么就用distinct热心网友 时间:2024-04-03 15:37
select * into ##tmp_table from 表 where 1=2追答总体思路就是 把每个 手机号取第一条数据放入临时表,最后查询临时表
热心网友 时间:2024-04-03 15:38
最简单的 select distinct (手机号)追问但是我得整条数据啊追答你!!!你在字段后面加其他字段呀,select distinct (手机号),电话 你想要什么字段就加多少字段