84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
如何在 clickhouse 数据库中使用这种情况条件以 % 形式显示输出。
ROUND(count(distinct case when bt.status = 'approved' then bt.id else null end)/count(distinct p.id) * 100) as "SR- txns"
但它按原样工作???
create table test(id int, id2 int, status String) Engine=Memory as select number,number, ['approved', 'completed'][number%3] from numbers(10); select ROUND(count(distinct case when status = 'approved' then id else null end)/count(distinct id2) * 100) as "SR- txns" from test ┌─SR- txns─┐ │ 30 │ └──────────┘
Clickhouse 风格的语法:
select ROUND(uniqExactIf(id,status = 'approved')/uniqExact(id2) * 100) as "SR- txns" from test ┌─SR- txns─┐ │ 30 │ └──────────┘
但它按原样工作???
Clickhouse 风格的语法: