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

Mysql 如何选择指定的行

Mysql 如何选择指定的行,mysql,sql,Mysql,Sql,我有一个关于如何在MySQL中选择行的问题。我的桌子是这样的: 候选人编号、职位、姓名、选票 01, president, ramos, 3 02, president, bacon, 5 03, vice president, grey, 2 04, vice president, macapagal, 1 如何显示得票最高的某一职位(总裁、副总裁)的候选人编号和姓名 我想要的结果是: 02, president, bacon, 5 03, vice president, grey, 2

我有一个关于如何在MySQL中选择行的问题。我的桌子是这样的: 候选人编号、职位、姓名、选票

01, president, ramos, 3
02, president, bacon, 5
03, vice president, grey, 2
04, vice president, macapagal, 1
如何显示得票最高的某一职位(总裁、副总裁)的候选人编号和姓名

我想要的结果是:

02, president, bacon, 5
03, vice president, grey, 2

也就是说,返回没有相同位置的人拥有更多投票权的行。

按投票顺序描述?但是为什么拉莫斯不在第二位呢?看,我只想显示每个位置的获胜者。如果同一位置的两个记录之间的票数相同,你想做什么?如果在某个位置出现平局或相同票数,则显示投票。可能吗?对不起,我只是mysql的新手。@iamjf:希望如此。出于学习的目的,它会更好,因为你只得到了算法,并且必须自己编写查询。请记住:总是先找到算法(“没有相同职位的人拥有更多的选票”或“没有相同职位但拥有更高选票的人”),然后写下查询。谢谢。我会记住的。再次感谢。
select candidate_number, position, name, votes
from tablename t1
where not exists (select 1 from tablename t2
                  where t2.position = t1.position
                    and t2.votes > t1.votes)