【问题标题】:SQL- Distinct Count (SQL Developer)SQL - 非重复计数 (SQL Developer)
【发布时间】:2021-06-09 08:35:17
【问题描述】:

我需要统计每个测试用例中的测试步骤数。

  • 该表名为Test_Step
  • 测试用例有一个Test_Case_ID
  • 表格有一列Test_Step_Number

我想得到一个答案,告诉我NUMBER 每个测试用例的测试步骤 (Test_Case_ID)。

我希望将列命名为“Number_Of_Steps”

到目前为止我有这个,但它不起作用

Select Count(
         Distinct
         (STANDARD_HASH(test_case_id, Test_step_nuber))
         + STANDARD_HASH (Reverse(test_case_id), REVERSE(Test_step_nuber))
       )
from   test_step AS "Number_Of_Steps" ;

【问题讨论】:

  • 所有的散列是为了什么?这似乎与您的问题完全无关。
  • 这是我在其他一些论坛中发现的一种尝试。你是对的......这与本案无关

标签: sql oracle count distinct


【解决方案1】:

您需要为计算列(而不是表)设置别名,如果您希望为每个 test_case_id 使用别名,则需要使用 GROUP BY

SELECT test_case_id,
       COUNT( DISTINCT test_step_number ) AS Number_of_steps
FROM   test_step
GROUP BY test_case_id;

我不知道你为什么要散列和反转列。

【讨论】:

    【解决方案2】:
    select Test_Case_Id, count(*) as Number_Of_Steps
    from Test_Step
    group by Test_Case_Id
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-17
      • 2016-10-27
      • 1970-01-01
      • 1970-01-01
      • 2021-10-13
      • 2019-05-31
      • 2012-06-08
      相关资源
      最近更新 更多