A. 如何查询数据库中有相同字段的数据
查看可用如下方法:
1、创建测试表,插入数据:
1
2
3
4
5
6
7
8
9
10
11
12
13
create table proct
(id int,
name varchar(10),
totol int)
insert into proct values (1,'香蕉',100)
insert into proct values (2,'橘子',67)
insert into proct values (3,'葡萄',89)
insert into proct values (4,'苹果',235)
insert into proct values (5,'香蕉',77)
insert into proct values (6,'芒果',34)
insert into proct values (7,'葡萄',78)
insert into proct values (8,'梨',24)
表中数据如:
2、如果查询name列有重复的数据,可执行sql语句:
1
select * from proct where name in (select name from proct group by name having COUNT(*)>1)
说明:查询的结果就是香蕉和葡萄在表中是有重复的,要把香蕉和葡萄的所有记录都查询出来,结果如图:
B. 如何在同一个数据库表中查询出相同的记录
方法如下:
select * from 你的表名
a where id=(select min(id) from 你的表名 whereitem_id=a.item_id)
在查询之前先把数据库表中的第一行复制到sid里在去,然后让sid和下面的每一行进行比较
取所有相同的行的最小的一下,也可以取最大的,结果是一样的。
这样让所有的行都比较不就得到不重复的数据了。
C. SQL查询数据库中完全相同的两条数据
查询的操作方法和步骤如下:
1、首先,创建一个测试表,如下图所示,然后进入下一步。
D. 查询数据库中某一字段中的值全部相同的数据
CREATETABLE#test(
NAMEvarchar(10),
NUMvarchar(10),
TELvarchar(10)
);
INSERTINTO#testVALUES('张三','01','11111111');
INSERTINTO#testVALUES('李四','02','22222233');
INSERTINTO#testVALUES('王五','03','44444444');
SELECT
*
FROM
#testt
WHERE
REPLICATE(LEFT(TEL,1),LEN(TEL))=TEL;
查询结果:
NAMENUMTEL
------------------------------
张三0111111111
王五0344444444
(2行受影响)
注:
LEFT(TEL, 1) 意思是 获取 TEL 的左边的第一个字母.
LEN(TEL) 是获取 TEL 字符串的长度.
REPLICATE( LEFT(TEL, 1), LEN(TEL)) 是重复 TEL 的左边的第一个字母. 长度为TEL 字符串的长度.
REPLICATE( LEFT(TEL, 1), LEN(TEL)) = TEL 就是用第一个字符,重复了 TEL 的长度以后, 和 TEL 一样, 说明这个 TEL 全部只使用了一个字符。
SQL Server 2008 Express 下测试通过。
E. 用Access查询设计查找两个表中同一字段相同值
在ACCESS数据库查询窗口中,新建查询,设计视图,
将两个表添加进查询源中,将要查找相同值的字段从一个表中拖到另一个表中,
此时表间会有一条线连接两个表,此时便建立了表间一对一关系。
最后将查询所需要的字段拖入字段列中。
说明:因为建立一对一关系,所以查询出来的记录,便是两个表中同一字段的相同值。
F. SQL语句来判断数据库某一列下是否有相同值的记录方法
SQL语句来判断数据库某一列下是否有相同值的记录方法
有的时候我们可能需要判断数据库中,某一字段(某一列)下是否有相同值的记录,这时该怎么办呢?根据您所使用的数据库不同,首先你要打开数据库的查询窗口,通过SQL语句来创建查询,然后运行就可以了,具体方法如下:
这里假设数据库中有一个名为student的表,所要查询的字段是name,则判断student表中name字段下是否有相同值的记录的SQL语句为:
1、查询出数据库中总的name字段记录数的值
SELECT COUNT(name)
FROM student
2、查询出数据库中name字段下唯一的记录总数(即查询出不相同的记录数,如果找到相同的记录则取其中一条记录)
SELECT COUNT(name)
FROM student
GROUP BY name
比较上面两次查询的结果,如果一样,则表明student数据库中的name字段下并没有相同值的记录,如果不一样,则表明student数据库中的name字段下有相同值的记录。
G. 如何查找数据库中的重复数据
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from peoplewhere peopleId in (select peopleId from people group by peopleId having count (peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
delete from peoplewhere peopleId in (select peopleId from people group by peopleId having count (peopleId) > 1)and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )>1)
3、查找表中多余的重复记录(多个字段)
select * from vitae awhere (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having
(7)数据库同值查询扩展阅读
FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。
在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。
例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定:
SELECTusername,citytable.cityid
FROMusertable,citytable
WHEREusertable.cityid=citytable.cityid
在FROM子句中可用以下两种格式为表或视图指定别名:
表名 as 别名
表名 别名
H. 如何查询数据库中相同的数据
select*fromconsumewhereright(sno,4)in
(selectright(sno,4)fromconsumegroupbyright(sno,4)havingcount(*)>1)
I. asp数据库查询,字段值相同的多个记录。
两种方法,一种是查询重复的数据,只查询重复记录,不管其余信息,如ID什么的:
select uid, time from ztest GROUP BY uid, time having count(*)>1;
查出结果是
uid
time
1
1
还有一种是查询你指定信息,可以查询出ID信息:
select distinct a.id, a.uid, a.time from ztest a join ztest b on a.id != b.id where a.uid = b.uid and a.time = b.time;
查询结果是:
id
uid
time
1
1
1
3
1
1
J. 怎么查询数据库中字段的值相同的数据
假如要 查询的字段是 name
select * from 表 where id in (
select id from 表 group by name having count(*)>1
) tt