我想在查询结果的列中计算结果中有多少值重复。
我从复杂查询中得到的结果集是 -
svn rvn eng count(*)
1 1 Boy 1
2 1 Teacher 1
3 1 Chair 1
3 2 Chairwoman 1
3 3 Chairperson 1
4 1 Without 1
4 2 Without fail 1
5 1 Anyone 1
5 2 Anyone else 1
6 1 Permission 1
我只想SVN
在第四列中获取列中重复值的数量。
IE
svn rvn eng count(*)
1 1 Boy 1
2 1 Teacher 1
3 1 Chair 3
3 2 Chairwoman 3
3 3 Chairperson 3
4 1 Without 2
4 2 Without fail 2
5 1 Anyone 2
5 2 Anyone else 2
6 1 Permission 1
请帮我解决这个问题,还请告诉我这会对查询效率造成什么影响?
*注意 - *我想要在结果集中提取的值的计数。表中有更多的条目svn
1,2,4,6。但只计算选择了多少。
提前致谢 :)
编辑1
这是我当前的查询:-
SELECT `svn` , `rvn` ,`eng` , count(*) FROM
(SELECT `svn`, `rvn`, `eng`, `hin`
FROM `table1`
WHERE `SN` = @sn
UNION DISTINCT
SELECT `table1_refer`.`sn_svn` AS 'svn',
`table1`.`rvn`, `table1`.`eng` ,
`vocab_rel`.`hin`
FROM `table1`
JOIN `table1_refer`
WHERE `table1_refer`.`rSN` = `table1`.`SN`
AND `table1_refer`.`svn` = `table1`.`svn`
AND `table1_refer`.`SN` = @sn
) AS SUBQUERY
GROUP BY `svn`,`rvn`
ORDER BY `svn`, `rvn`