Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
varmekontrol
Creator
Creator

Count if "Date is null" and Value=string/number

Hi

So basically I have this data

meter_iderror_codedeactivation_date

123456

2
654654204-05-2017
656565
2131231Hardware_error
2333333
4444444Componet_error04-05-2017

What I need to Count is an error_code=number

count(distinct(if(error_code=2, deactivation_date=BLANK)))

I only want to Count the Distinct meter_id, if the error_code=2, and the Distinct meter_id, has no deactivation_date

What I need to Count is an error_code=string

count(distinct(if(error_code='*Hardw*', deactivation_date=BLANK)))

1 Solution

Accepted Solutions
Anonymous
Not applicable

Hi,

Try this one

If(error_code=2 and  len(trim(deactivation_date))= 0,Count( distinct meter_id) ,if(wildmatch(error_code,'*error') and  len(trim(deactivation_date))=0, Count( distinct meter_id),0))

Capture 9.PNG

View solution in original post

7 Replies
Gysbert_Wassenaar

Try count( {< error_code = {"*"}, deactivation_date -= {"*"} >} distinct meter_id)


talk is cheap, supply exceeds demand
varmekontrol
Creator
Creator
Author

I get the same result as if I remove the deactivation_date, and only get - count(if(error_code=2,distinct meter_id))

sasiparupudi1
Master III
Master III

count(distinct if(error_code=2 and len(Trim(deactivation_date))=0,meter_id))


count(distinct if(wildmatch(error_code,’*hardware*’)and len(Trim(deactivation_date))=0,meter_id))

baarathi
Creator III
Creator III

Hi Daniel,

Try this one out

= count ({<error_code={'2'},deactivation_date={"IsNull(deactivation_date)<0"}>}meter_id)

sasiparupudi1
Master III
Master III

count(distinct if(wildmatch(error_code,’*hardware*’,2)and len(Trim(deactivation_date))=0,meter_id))

Anonymous
Not applicable

Hi,

Try this one

If(error_code=2 and  len(trim(deactivation_date))= 0,Count( distinct meter_id) ,if(wildmatch(error_code,'*error') and  len(trim(deactivation_date))=0, Count( distinct meter_id),0))

Capture 9.PNG

sunny_talwar

May be create a flag in the script

If(Len(Trim(error_code)) > 0 and Len(Trim(deactivation_date)) = 0, 1, 0) as Flag1,

If(error_code = 2 and Len(Trim(deactivation_date)) = 0, 1, 0) as Flag2,

Count(DISTINCT {<Flag1 = {1}>} meter_id) -> This will equal 2 (123456 and 2131231)

Count(DISTINCT {<Flag2 = {1}>} meter_id) -> This will equal 1 (123456)