Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mysql表中找到一定数量的重复项?_Mysql_Database - Fatal编程技术网

如何在mysql表中找到一定数量的重复项?

如何在mysql表中找到一定数量的重复项?,mysql,database,Mysql,Database,所以我有一张有人的桌子。 此表用于连接具有许多功能的车辆。 我需要找出身份证在表person\u vehicle上出现了多少次。 我该怎么做? 谢谢大家的提问试试这个: SELECT count(name) FROM persons WHERE name = "Jake"; 你试过什么?根据表格的不同,您可以执行以下操作: 从名字为“Jake”的人中选择* 它将返回名为“Jake”的行数 或者,如果您只需要一行的总出现次数: 从first\u name='Jake'的人员中选择COUNT(fi

所以我有一张有人的桌子。 此表用于连接具有许多功能的车辆。 我需要找出身份证在表person\u vehicle上出现了多少次。 我该怎么做? 谢谢大家的提问

试试这个:

SELECT count(name) FROM persons WHERE name = "Jake";

你试过什么?根据表格的不同,您可以执行以下操作:

从名字为“Jake”的人中选择*

它将返回名为“Jake”的行数

或者,如果您只需要一行的总出现次数:


从first\u name='Jake'的人员中选择COUNT(first\u name)

这里有两条建议

对于所有名称: 给出名称重复的次数

SELECT count(name) FROM persons GROUP BY name; 
专门针对杰克:

SELECT count(name) FROM persons WHERE name = "Jake";

对要查找重复项的列使用group by语句。如果计数大于1,则表示重复

Select count(id), name from table_name group by id HAVING count(id) > 1;

只有重复的记录才会出现。

您要查找的是
分组依据

一个表包含多个列。您必须首先确定您需要的数据的哪些列是共同的

假设我有一个表地址(人名、图号、pin)

如果我尝试为微粒pin选择居住在那里的人数:

SELECT pin, COUNT(*)
FROM address
GROUP BY pin;
SELECT plot_no, pin, COUNT(*)
FROM address
GROUP BY plot_no, pin;
如果我尝试选择一个编号和pin,有多少人住在那里:

SELECT pin, COUNT(*)
FROM address
GROUP BY pin;
SELECT plot_no, pin, COUNT(*)
FROM address
GROUP BY plot_no, pin;

这将返回所有行,而不是出现的数目