为了账号安全,请及时绑定邮箱和手机立即绑定

SQL 到 Linq 的等效语法

SQL 到 Linq 的等效语法

C#
三国纷争 2022-01-09 15:25:09
我需要帮助来编写以下 SQL 查询的 linq 语法。企业是:从表中PhoneNumberClick_Table,我需要TotalCount,CountWithWhereCondition和CountWithUniqueValuedatewise:SELECT     FORMAT([ClickTime], 'yyyy-MM-dd') DateTimeField,    COUNT (*) CountTotalClick,    COUNT ((CASE PhoneNumber WHEN 'NotProvided' THEN 1 ELSE NULL END)) CountNumberProvided,    COUNT ((CASE PhoneNumber WHEN 'NotProvided' THEN NULL ELSE 1 END))  CountNumberNotProvided,    COUNT (DISTINCT PhoneNumber) CountUniqueNumberFROM     [dbo].[PhoneNumberClick_Table]GROUP BY    FORMAT([ClickTime], 'yyyy-MM-dd')ORDER BY     FORMAT([ClickTime], 'yyyy-MM-dd') 
查看完整描述

2 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

使用 sum 而不是 count 作为 case 语句,您必须更改提供的电话号码的逻辑,而不是像我的查询那样提供的逻辑


SELECT 

      FORMAT([ClickTime], 'yyyy-MM-dd') DateTimeField

     ,COUNT (*) CountTotalClick 

     ,sum((case when  PhoneNumber is not null then 1 else 0 end)) CountNumberProvided 

     ,sum((case when  PhoneNumber= 'NotProvided' then 0 else 1 end))  CountNumberNotProvided 

     ,COUNT (DISTINCT PhoneNumber) CountUniqueNumber

  FROM [dbo].[PhoneNumberClick_Table]

  GROUP by FORMAT([ClickTime], 'yyyy-MM-dd')

  ORDER BY FORMAT([ClickTime], 'yyyy-MM-dd')


查看完整回答
反对 回复 2022-01-09
?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

尝试使用这个工具,我以前用过,对我来说效果很好,为了让这个工具最适合你,尝试分割你的查询,然后在转换后总结它们


查看完整回答
反对 回复 2022-01-09
  • 2 回答
  • 0 关注
  • 221 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号