SQL查询帮助(是的,我已经尝试过嵌套选择)

时间:2018-05-08 20:33:55

标签: mysql sql nested

this is a screenshot of the database I am talking about

所以假设我有一个数据库,里面装满了他们的身份证号码,还有一年他们在那一年做了一个参赛作品加上他们最喜欢的节目。这些年份总是在2014 - 2018年的范围内,但不是每个人都有每年的入场券。我如何计算在他们录制的所有年份中始终拥有与他们最喜欢的节目相同的节目的总人数。

我尝试选择嵌套但我一直收到错误。我在这里检查了其他SQL相关的问题,谈论计算和多年来的变化。但这些答案都没有与我的数据库兼容,解决方案也无法转让。

3 个答案:

答案 0 :(得分:0)

我认为你需要这样的东西:

查看我的SQLFiddle

formulaDisplayed = (MathView) findViewById(R.id.formula_one);
formulaDisplayed.getSettings().setBuiltInZoomControls(true);

答案 1 :(得分:0)

嗯。嗯。 。 。这让只有一个节目的人得到了:

select count(*)
from (select person
      from t
      group by person
      having min(show) = max(show)
     ) p;

答案 2 :(得分:0)

您可以计算某人拥有的不同喜欢的节目的数量,如果是1那么他们每次都有相同的喜好。

SELECT COUNT(*)
FROM (SELECT 1
      FROM yourTable
      GROUP BY person_id
      HAVING COUNT(DISTINCT favorite_show) = 1) AS x