Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.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_Postgresql - Fatal编程技术网

如何在mysql中获取一列中只有一个条目的数据?

如何在mysql中获取一列中只有一个条目的数据?,mysql,postgresql,Mysql,Postgresql,我有一个名为scholar的表,它有一个列studentid,现在我 要获取studentid只出现一次的数据,一个id在studentid列中可以有多个条目 下面是我的结构数据 现在我想得到studentid=123和154的所有数据,因为它们只出现一次 下面是我想要的输出: 那么什么是查询,请帮助我想您需要这样的查询: SELECT *,count(*) as cnt FROM scholar GROUP BY studentid HAVING cnt = 1 但这不是最快的解决方案

我有一个名为scholar的表,它有一个列studentid,现在我 要获取studentid只出现一次的数据,一个id在studentid列中可以有多个条目

下面是我的结构数据

现在我想得到studentid=123和154的所有数据,因为它们只出现一次

下面是我想要的输出:


那么什么是查询,请帮助

我想您需要这样的查询:

SELECT *,count(*) as cnt FROM scholar GROUP BY studentid HAVING cnt = 1
但这不是最快的解决方案

或者,您可以使用:

SELECT * FROM scholar GROUP BY studentid HAVING count(id) = 1

你说学生只来一次是什么意思。你是说有多行具有相同的学生ID吗?哦,这意味着你有一个设计错误的表。听起来studentid列中有逗号分隔的值,而这不是存储它的方式。不要在这个问题上浪费时间。请用一些虚拟数据添加表结构,以及您想要的输出是什么。这对想给出答案的人来说是非常有帮助的。谢谢,请检查更新的