首页 > 解决方案 > SQL - 非重复计数 (SQL Developer)

问题描述

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

我想得到一个答案,告诉我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" ;

标签: sqloraclecountdistinct

解决方案


您需要为计算列(而不是表)加上别名,如果您想要为每个列使用别名,则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;

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


推荐阅读