【问题标题】:COUNT how many times a value appears in my interventions and divide it by the number of total interventions计算一个值在我的干预中出现的次数,然后除以干预总数
【发布时间】:2021-05-16 23:42:08
【问题描述】:

我需要编写一个 SQL 查询来计算某个值出现的次数,然后我需要将其除以干预的总数,然后将其乘以 100 以得到 pourcentage。

我需要将它除以自 2021 年 5 月 1 日以来关闭的干预数量。干预表与上述表格相关联。

干预表 = dbo.gi3_intervention.gi3_n_intrvt
类型应该是'08',所以dbo.gi3_intervention.GI3_C_TYPE_INTRVT = '08' 并且应该自 2021 年 5 月 1 日起关闭,所以dbo_GI3_INTERVENTION.GI3_D_CLOT_INTRVT = '>2021-05-01'

我只知道如何计算某个值出现的次数,但我不知道如何进行除法。

这是我得到的:

SELECT count(*) / (SELECT count(*) FROM dbo.gi3_intervention.gi3_n_intrvt WHERE dbo.gi3_intervention.GI3_C_TYPE_INTRVT = '08' and  dbo.gi3_intervention.GI3_D_CLOT_INTRVT >= Convert(datetime, '2021-05-01' ) * 100
FROM dbo.gi3_note_intervention_appr_site
WHERE dbo.gi3_note_intervention_appr_site.gi3_c_sous_sujt_note = 'Etud tech Renseig add'

【问题讨论】:

  • 正常分割count(something) / number
  • 第二部分不知道怎么写
  • 在您的问题中,表之间的关系似乎并不相关。在这种情况下,您只需将分母添加到变量中,然后继续查询。但这听起来很奇怪。一个数据的小例子,只填充了相关的列,预期的结果确实有助于得到正确的答案。

标签: sql


【解决方案1】:

嗯。 . .您可以按照两个子查询的比率来执行此操作。但是,因为你没有提到数据库,所以我将在FROM 子句中进行计算

select nias.cnt * 100.0 / gni.cnt
from (select count(*) as cnt
      from dbo.gi3_note_intervention_appr_site nias
      where nias.gi3_c_sous_sujt_note = 'Etud tech Renseig add'
     ) nias cross join
     (select count(*) as cnt
      from dbo.gi3_intervention.gi3_n_intrvt gni
      where gni.GI3_C_TYPE_INTRVT = '08' and  
            gni.GI3_D_CLOT_INTRVT >= Convert(datetime, '2021-05-01')
     ) gni;

【讨论】:

    【解决方案2】:
    SELECT count(*) / (SELECT count(*) FROM dbo.gi3_note_intervention_appr_site) * 100
    FROM dbo.gi3_note_intervention_appr_site
    WHERE dbo.gi3_note_intervention_appr_site.gi3_c_sous_sujt_note = 'Etud tech Renseig add'
    

    【讨论】:

    • 谢谢.. 但它应该除以干预次数... 这是第二张桌子。你省略了我问题的第二部分!
    • 这是因为您的问题并不清楚“价值观”和“干预”之间的联系是什么,您的问题中没有足够的信息
    • 你可以在我发布的图片中看到。每一次干预都有价值。我只想要名为“etud tech renseig add”的总值除以自 2021 年 5 月 1 日以来关闭的干预总数。我什至将所有关于“干预”的名称都命名为
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-29
    相关资源
    最近更新 更多