面试---查找重复列

复制代码
代码
 1 查找重复列:
 2 
 3 select * from ysgg where number in(select number from ysgg group by number having count(number)>1);
 4 
 5  
 6 
 7 删除重复列:
 8 
 9 delete from ysgg where number in (select min(number) from ysgg group by number having count(number)>1);
10 
复制代码
代码
表stuinfo,有三个字段recno(自增),stuid,stuname
  
  建该表的Sql语句如下:
  
  Create TABLE [StuInfo] (
   [recno] [
int] IDENTITY (11) NOT NULL ,
   [stuid] [varchar] (
10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
   [stuname] [varchar] (
10) COLLATE Chinese_PRC_CI_AS NOT NULL
  ) ON [PRIMARY]
  GO
  
  
1.--查某一列(或多列)的重复值(只能查出重复记录的值,不能整个记录的信息)
  
--如:查找stuid,stuname重复的记录
  select stuid,stuname from stuinfo
  group by stuid,stuname
  having(count(
*))>1
  
  
2.--查某一列有重复值的记录(这种方法查出的是所有重复的记录,也就是说如果有两条记录重复的,就查出两条)
  
--如:查找stuid重复的记录
  select 
* from stuinfo
  
where stuid in (
  select stuid from stuinfo
  group by stuid
  having(count(
*))>1
  )
  
  
3.--查某一列有重复值的记录(只显示多余的记录,也就是说如果有三条记录重复的,就显示两条)
  
--这种方成绩的前提是:需有一个不重复的列,本例中的是recno
  
--如:查找stuid重复的记录
  select 
* from stuinfo s1
  
where recno not in (
  select max(recno) from stuinfo s2
  
where s1.stuid=s2.stuid
  )

复制代码

 

复制代码

 

 

posted @   hevily  Views(350)  Comments(0Edit  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
点击右上角即可分享
微信分享提示