当前位置: 首页 > 面试题库 >

MS ACCESS:如何使用访问查询来计算不同的价值?

江宏深
2023-03-14
问题内容

这是下面给出的当前复杂查询。

SELECT DISTINCT Evaluation.ETCode, Training.TTitle, Training.Tcomponent, Training.TImpliment_Partner, Training.TVenue, Training.TStartDate, Training.TEndDate, Evaluation.EDate, Answer.QCode, Answer.Answer, Count(Answer.Answer) AS [Count], Questions.SL, Questions.Question
FROM ((Evaluation INNER JOIN Training ON Evaluation.ETCode=Training.TCode) INNER JOIN Answer ON Evaluation.ECode=Answer.ECode) INNER JOIN Questions ON Answer.QCode=Questions.QCode
GROUP BY Evaluation.ETCode, Answer.QCode, Training.TTitle, Training.Tcomponent, Training.TImpliment_Partner, Training.Tvenue, Answer.Answer, Questions.Question, Training.TStartDate, Training.TEndDate, Evaluation.EDate, Questions.SL
ORDER BY Answer.QCode, Answer.Answer;

还有另一列Training.TCode。我需要计算不同的Training.TCode,有人可以帮助我吗?如果您需要更多信息,请告诉我


问题答案:

尝试

select ..., count(distinct Training.Tcode) as ..., ...

编辑-现在请看一下…

采取以下SQL代码。第一个选择是SQL Server如何执行此操作,第二个查询应符合访问权限…

declare @t table (eCode int, tcode int)
insert into @t values(1,1)
insert into @t values(1,1)
insert into @t values(1,2)
insert into @t values(1,3)
insert into @t values(2,2)
insert into @t values(2,3)
insert into @t values(3,1)

select 
    ecode, count(distinct tCode) countof
from
    @t
group by
    ecode

select ecode, count(*)
from
    (select distinct tcode, ecode
    from  @t group by tcode, ecode) t
group by ecode

它返回以下内容:

ecode tcode
1       3 (there are 3 distinct tcode for ecode of 1)
2       2 (there are 2 distinct tcode for ecode of 2)
3       1 (there is 1 distinct tcode for ecode of 3)


 类似资料:
  • 我正在SpringBootAPI中使用mongoDb进行分页搜索。 对于客户搜索路径,我正在构建一个查询,根据用户输入使用一系列条件。然后我进行计数以显示结果总数(以及计算出的关联页面数) 然后我做分页查询只返回当前页面结果 这一切工作得很好。现在在我的总结果上,我经常有相同用户的多个结果,我想显示分页列表中的那些,但我也想显示一个新的计数器,其中包含搜索中的总不同用户。 我看到了发现。不同的参数

  • 当我通过此查询计算日期中的不同年份时 这给了我一个错误 经过调查,我发现了一个问题:-spring JPA@查询错误,应为CLOSE,在附近找到“(” 是否有任何解决方法可以在没有本机查询的情况下获得不同的年份?

  • 如何在Grafana的同一面板中使用来自不同查询的prometheus查询结果。 实例 我在格拉法纳有3个普罗米修斯查询,

  • 我想在一个名为的表中计算名为的同一列: 假设我需要在20180201和20180228之间计算“(值的类型=111或222或333)/(值的类型=444)”,我使用SQL查询如下: 我只选择了备注=“111或222或333”,我不知道为什么会出现所有备注(“555和666”),我得到的结果如下: SQL查询正确吗?我确信我的SQL查询有问题。非常感谢您的建议。

  • 问题内容: 我需要在一个查询中计算两列中某些数据的出现总数。数据库位于SQL Server 2005中。 例如,我有此表: 我需要查询一个结果: 1.名为“约翰”的人数 2.年龄超过30岁的“约翰”的人数。 我可以通过这种方式对子查询进行操作(这只是示例): 但这非常慢,我正在寻找更快的方法。 与使用子查询相比,您是否知道一种更好的方法来计算一个查询中的少量计数? 问题答案: 使用CASE语句,您

  • 考虑到我有一个FixSturyQueQue1,它返回10个文档和另一个查询QuyR2,返回15个文档,但是这15, 5个文档中的时间对于QueRe1和QueRe2都是通用的。对于第二个查询,在支持持久性的平台中,读取计数是10还是15?