MySQL子选择多个条件

MySQL子选择多个条件,mysql,sql,join,subquery,Mysql,Sql,Join,Subquery,我试图将多个select语句合并到一个查询中,但似乎无法正确执行。我想我需要做一个子选择。我肯定我忽略了一些简单的事情。在第二次查询之后,我有了更多信息,但除了不同的TASUUID编号外,它们的设置都是相同的 问题1: SELECT USR_USERNAME AS 'User Name', COUNT(AD.app_uid) AS 'Total' FROM APP_DELEGATION AD JOIN USERS U WHERE AD.USR_UID = U.U

我试图将多个select语句合并到一个查询中,但似乎无法正确执行。我想我需要做一个子选择。我肯定我忽略了一些简单的事情。在第二次查询之后,我有了更多信息,但除了不同的TASUUID编号外,它们的设置都是相同的

问题1:

SELECT USR_USERNAME AS 'User Name', 
           COUNT(AD.app_uid) AS 'Total'
FROM   APP_DELEGATION AD
JOIN   USERS U
WHERE  AD.USR_UID = U.USR_UID
AND    AD.DEL_THREAD_STATUS = 'Closed'
GROUP BY AD.USR_UID
问题2:

SELECT USR_USERNAME AS 'User Name', 
       COUNT(AD.app_uid) AS 'Total for Task A'
FROM   APP_DELEGATION AD
JOIN   USERS U
WHERE  AD.USR_UID = U.USR_UID
AND    AD.DEL_THREAD_STATUS = 'Closed'
AND    AD.TAS_UID = '23423423455'
GROUP BY AD.USR_UID

您的查询不正确。它们可能是如下所示:

查询1:

查询2:


您的查询不正确。它们可能是如下所示:

查询1:

查询2:


您的查询不正确。它们可能是如下所示:

查询1:

查询2:


您的查询不正确。它们可能是如下所示:

查询1:

查询2:


你可以通过一个案例陈述来做到这一点。大概是这样的:

SELECT USR_USERNAME AS 'User Name'
  ,COUNT(AD.app_uid) AS 'Total'
  ,SUM(case when AD.TAS_UID = '23423423455' then 1 else 0 end) as 'Total for Task A'
FROM APP_DELEGATION AS AD
  JOIN USERS AS U 
  ON AD.USR_UID = U.USR_UID
WHERE AD.DEL_THREAD_STATUS = 'Closed'
GROUP BY AD.USR_USERNAME

你可以通过一个案例陈述来做到这一点。大概是这样的:

SELECT USR_USERNAME AS 'User Name'
  ,COUNT(AD.app_uid) AS 'Total'
  ,SUM(case when AD.TAS_UID = '23423423455' then 1 else 0 end) as 'Total for Task A'
FROM APP_DELEGATION AS AD
  JOIN USERS AS U 
  ON AD.USR_UID = U.USR_UID
WHERE AD.DEL_THREAD_STATUS = 'Closed'
GROUP BY AD.USR_USERNAME

你可以通过一个案例陈述来做到这一点。大概是这样的:

SELECT USR_USERNAME AS 'User Name'
  ,COUNT(AD.app_uid) AS 'Total'
  ,SUM(case when AD.TAS_UID = '23423423455' then 1 else 0 end) as 'Total for Task A'
FROM APP_DELEGATION AS AD
  JOIN USERS AS U 
  ON AD.USR_UID = U.USR_UID
WHERE AD.DEL_THREAD_STATUS = 'Closed'
GROUP BY AD.USR_USERNAME

你可以通过一个案例陈述来做到这一点。大概是这样的:

SELECT USR_USERNAME AS 'User Name'
  ,COUNT(AD.app_uid) AS 'Total'
  ,SUM(case when AD.TAS_UID = '23423423455' then 1 else 0 end) as 'Total for Task A'
FROM APP_DELEGATION AS AD
  JOIN USERS AS U 
  ON AD.USR_UID = U.USR_UID
WHERE AD.DEL_THREAD_STATUS = 'Closed'
GROUP BY AD.USR_USERNAME


你希望你的结果是什么样的?您的第二个查询似乎只是第一个查询的子集。@nycd结果应显示如下:第1列:用户名,第2列:所有TAK的计数,第3列:仅指定任务的计数uidokay,我添加了一个我认为有帮助的答案。我的语法可能有点不对劲,但它应该能让你达到目的。你希望你的结果是什么样的?您的第二个查询似乎只是第一个查询的子集。@nycd结果应显示如下:第1列:用户名,第2列:所有TAK的计数,第3列:仅指定任务的计数uidokay,我添加了一个我认为有帮助的答案。我的语法可能有点不对劲,但它应该能让你达到目的。你希望你的结果是什么样的?您的第二个查询似乎只是第一个查询的子集。@nycd结果应显示如下:第1列:用户名,第2列:所有TAK的计数,第3列:仅指定任务的计数uidokay,我添加了一个我认为有帮助的答案。我的语法可能有点不对劲,但它应该能让你达到目的。你希望你的结果是什么样的?您的第二个查询似乎只是第一个查询的子集。@nycd结果应显示如下:第1列:用户名,第2列:所有TAK的计数,第3列:仅指定任务的计数uidokay,我添加了一个我认为有帮助的答案。我的语法可能有点不对劲,但它应该能让你达到目的。难道你不需要删除WHERE和语句,因为它已经在sum函数中声明过了吗?另外,1和0的情况到底是什么?你是对的。这本书应该出版。我将据此进行编辑。谢谢case语句将符合条件的行数相加。这基本上是一个计数。啊,这是有道理的。有点了解0正在执行的其他操作,但不确定1。谢谢您是否需要删除WHERE和语句,因为它已经在sum函数中声明过了?另外,1和0的情况到底是什么?你是对的。这本书应该出版。我将据此进行编辑。谢谢case语句将符合条件的行数相加。这基本上是一个计数。啊,这是有道理的。有点了解0正在执行的其他操作,但不确定1。谢谢您是否需要删除WHERE和语句,因为它已经在sum函数中声明过了?另外,1和0的情况到底是什么?你是对的。这本书应该出版。我将据此进行编辑。谢谢case语句将符合条件的行数相加。这基本上是一个计数。啊,这是有道理的。有点了解0正在执行的其他操作,但不确定1。谢谢您是否需要删除WHERE和语句,因为它已经在sum函数中声明过了?另外,1和0的情况到底是什么?你是对的。这本书应该出版。我将据此进行编辑。谢谢case语句将符合条件的行数相加。这基本上是一个计数。啊,这是有道理的。有点了解0正在执行的其他操作,但不确定1。谢谢我的回答解决了你的问题还是你仍然需要进一步的东西?我的回答解决了你的问题还是你仍然需要进一步的东西?我的回答解决了你的问题还是你仍然需要进一步的东西?我的回答解决了你的问题还是你仍然需要进一步的东西?