sql查重复记录
用select语句,查询重复记录
假设,表名为 T1 子段为 A,B,C
select count(*) ,A,B,C from T1
group by A,B,C having count(*) > 1
测试数据:
A100 B100 C100
A101 B101 C101
A102 B102 C102
A102 B102 C100
A102 B102 C102
A102 B102 C102
A100 B100 C100
运行结果:
2 A100 B100 C100
3 A102 B102 C102
相关文档:
在脑子里老是记得当初写SQL的时候,总是有人提醒对于主键的条件要写在前面,至于为什么现在总是记不清楚了。但是SQL中where 条件的执行顺序跟主键以及索引有很大的关系。
把上片中的表a 加上主键:
alter table
add constraint pk_a_id primary key (id)
然后在运行上篇中出错的例句:
select * from a where id in (1 ......
新建表:
create table [表名]
(
[自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,
[字段1] nVarChar(50) default '默认值' null ,
[字段2] ntext null ,
[字段3] datetime,
[字段4] money null ,
[字段5] int default 0,
[字段6] Decimal (12,4) default 0,
[字段7] image null ,
)
删除表:
Drop table [表 ......
/*
比如Excel有两列,A列和B列需要导入到SQL表中,反正我已经有几年不用DTS之类的工具了。
在Excel中的新的一列中,直接写公式
=CONCATENATE("Insert #tmp values('",A1,"','",B1,"')")
把每一行都设成同样的公式(双击即可完成)。
把整列复制下来,放到查询分析器中直接运行就好了。
也可以把公式改成 =CONCATEN ......
工作中积攒的几个自定义SQL函数:
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date, ,>
-- Description: 字符串切割函数
-- =============================================
ALTER function [dbo].[Split] ......
--求条sql语句:
-- 要求:1.按照Group_OutDate字段排序 ,得到前5条记录
-- 2.Group_Name字段的值不能重复
SELECT TOP 5 * from
( SELECT DISTINCT Group_Name ,
(SELECT TOP 1 Group_ID from AA_Sell_Group AS b WHERE b.Gro ......