Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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,我的数据库中有一张这样的表 xtra_scope_id+platform_id+player_uid组合在一起是独一无二的 给定一个xtra_scope_id(假设为2),我想编写一个返回2列的查询: 游戏者 与该播放器相关的行数,按xtra\u scope\u id对这些行进行分组(忽略platform\u id可以生成的多行)(该播放器有多少个xtra\u scope\u id?) 比如说 玩家_uuid 0069ce60-93b2-44a0-baf1-6fe7200e4946应该只有1

我的数据库中有一张这样的表

xtra_scope_id+platform_id+player_uid组合在一起是独一无二的

给定一个xtra_scope_id(假设为2),我想编写一个返回2列的查询:

  • 游戏者
  • 与该播放器相关的行数,按xtra\u scope\u id对这些行进行分组(忽略platform\u id可以生成的多行)(该播放器有多少个xtra\u scope\u id?)
  • 比如说


    玩家_uuid 0069ce60-93b2-44a0-baf1-6fe7200e4946应该只有1个作为计数,因为他只有xtra_scope_id=2的行

    根据问题的标题,您可以使用
    计数(不同)


    请参阅:不相关的注释与答案最为相似,但它看起来有点像wierd数据,为什么
    platform\u id
    created\u at
    可以
    NULL
    (“对于SQL来说未知”)@RaymondNijland,这与问题确实无关:)顺便说一下,我们想要清理这些数据。我想忽略platform\u id,基本上我想数一数每个玩家有多少个xtra_scope_id。我想我可以修改您的查询删除平台id。Thanks@Giggioz . . . 问题明确指出:“xtra_scope_id+platform_id+player_uuid组合在一起是唯一的。”但您可以修改答案以满足您的需要。阅读要点2。无论如何,感谢您分享您的解决方案,因为我能够解决我需要的查询。
    select player_id,
           count(distinct xtra_scope_id, platform_id, player_uuid) as uniq_combos
    from t
    group by player_id;