
SELECT Lname,UserName from LinkUser group by Lname,UserName having count (*)>1 --先找到表中两个字段(Lname,UserName)都一样的值,虚拟成B表,
通过内链接(INNER JOIN)把LinkUser表中两个字段(LinkUser.Lname)都一样的值的数据都查询出来,并按UserName的顺序排列(ORDER BY LinkUser.UserName)。
注意:Lname,UserName两个字段中有NULL时,内链接(INNER JOIN)中inkUser.Lname =B.Lname AND LinkUser.UserName=B.UserName 不成立,因为两空值是不等的。但在SELECT Lname,UserName from LinkUser group by Lname,UserName having count (*)>1的语句中的结果NULL值认定为重复。
关键字: 查询一个数据库表中某字段相同记录如:name addr socta aa 60a a1 50b bb 60b b1 65b b3 70要显示出来的是:a 2b 3即是说name相同记录的有a,b 分别有2,3条相同的记录.查看可用如下方法:1、创建测试表,插入数据:
1
2
3
4
5
6
7
8
9
10
11
12
13
create table product
(id int,
name varchar(10),
totol int)
insert into product values (1,'香蕉',100)
insert into product values (2,'橘子',67)
insert into product values (3,'葡萄',89)
insert into product values (4,'苹果',235)
insert into product values (5,'香蕉',77)
insert into product values (6,'芒果',34)
insert into product values (7,'葡萄',78)
insert into product values (8,'梨',24)
表中数据如:
2、如果查询name列有重复的数据,可执行sql语句:
1
select * from product where name in (select name from product group by name having COUNT(*)>1)
说明:查询的结果就是香蕉和葡萄在表中是有重复的,要把香蕉和葡萄的所有记录都查询出来,结果如图:
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)