select count(nullif(if(name not like '南京%', '其他', '南京'), '其他'))
在 2020-09-27 17:23:07,"zya" <z_yu...@foxmail.com> 写道: >你好,链接无法显示,能麻烦再贴下吗 > > >------------------ 原始邮件 ------------------ >发件人: > "user-zh" > ><anonn...@126.com>; >发送时间: 2020年9月27日(星期天) 下午5:20 >收件人: "user-zh"<user-zh@flink.apache.org>; > >主题: Re:回复:flink sql count问题 > > > >hi:<br/>这种方法看下能否满足<br/>select count(nullif(if(name not like '南京%', '其他', >'南京'), '其他')) >在 2020-09-27 17:07:39,"zya" <z_yu...@foxmail.com> 写道: >>貌似只能这样了,感谢回答 >> >> >> >> >>------------------&nbsp;原始邮件&nbsp;------------------ >>发件人: > >"user-zh" > <greemqq...@163.com&gt;; >>发送时间:&nbsp;2020年9月27日(星期天) 下午5:03 >>收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;; >> >>主题:&nbsp;Re:回复:flink sql count问题 >> >> >> >>你count 也会生成记录啊。 你过滤掉就行&nbsp;&nbsp; 。 比如 having xxx&nbsp; >,或者加个filter >>在 2020-09-27 17:01:06,"zya" <z_yu...@foxmail.com&gt; 写道: >>&gt;这个是我现在的做法,但是的问题就是使用sum会在条件没满足时也会在mysql中生成一条记录 >>&gt;&amp;nbsp; >>&gt; >>&gt; >>&gt; >>&gt; >>&gt;------------------&amp;nbsp;原始邮件&amp;nbsp;------------------ >>&gt;发件人:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; > >"user-zh"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; > <greemqq...@163.com&amp;gt;; >>&gt;发送时间:&amp;nbsp;2020年9月27日(星期天) 下午4:59 >>&gt;收件人:&amp;nbsp;"user-zh"<user-zh@flink.apache.org&amp;gt;; >>&gt; >>&gt;主题:&amp;nbsp;Re:flink sql count问题 >>&gt; >>&gt; >>&gt; >>&gt;最好把null 变成0,&amp;nbsp; 你这样&amp;nbsp;&amp;nbsp; >sum(if(name like '南京%',1 , 0)) >>&gt;在 2020-09-27 16:53:56,"zya" <z_yu...@foxmail.com&amp;gt; 写道: >>&gt;&amp;gt;请教各位: >>&gt;&amp;gt;我有一个sql任务需要进行count,在count中有一个表达式,只想count符合条件的记录, >>&gt;&amp;gt;之前在hive中是这么写的:count(if(name like '南京%',1 , >null)),但是flink sql中count不能为null,有什么别的方法能实现该功能吗? >>&gt;&amp;gt;使用的是flink1.10.1 blink >>&gt;&amp;gt;&amp;amp;nbsp;