Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Posting on Qlik Community is temporarily paused for some users. Thank you for patience and we'll update you soon!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Age Filter

How can i make something like it an easier way?

Clients:
load*,
if(Age>=0 and Age<=17,'0-17 yesrs',
if(Age = 18,'18 years',
if(Age = 19,'19 years',
if(Age = 20,'20 years',
if(Age = 21,'21 years',
if(Age = 22,'22 years',
if(Age = 23,'23 years',
if(Age = 24,'24 years',
if(Age = 25,'25 years',
if(Age = 26,'26 years',
if(Age = 27,'27 years',
if(Age = 28,'28 years',
if(Age = 29,'29 years',
if(Age = 30,'30 years',
if(Age = 31,'31 years',
if(Age = 32,'32 years',
if(Age = 33,'33 years',
if(Age = 34,'34 years',
if(Age = 35,'35 years',
if(Age = 36,'36 years',
if(Age = 37,'37 years',
if(Age = 38,'38 years',
if(Age = 40,'40 years',
if(Age = 41,'41 years',
if(Age = 42,'42 years',
if(Age = 43,'43 years',
if(Age = 44,'44 years',
if(Age = 45,'45 years',
if(Age = 46,'46 years',
if(Age = 47,'47 years',
if(Age = 48,'48 years',
if(Age = 49,'49 years',
if(Age = 50,'50 years',
if(Age = 51,'51 years',
if(Age = 52,'52 years',
if(Age = 53,'53 years',
if(Age = 54,'54 years',
if(Age = 55,'55 years',
if(Age = 56,'56 years',
if(Age = 57,'57 years',
if(Age = 58,'58 years',
if(Age = 59,'59 years',
if(Age = 60,'60 years',
if(Age = 61,'61 years',
if(Age = 62,'62 years',
if(Age = 63,'63 years',
if(Age = 64,'64 years',
if(Age = 65,'65 years',
if(Age = 66,'66 years',
if(Age = 67,'67 years',
if(Age = 68,'68 years',
if(Age = 69,'69 years',
if(Age = 70,'70 years','more 70 years')))))))))))))))))))))))))))))))))))))))))))))))))))) as Agefilter

Labels (1)
1 Solution

Accepted Solutions
Not applicable
Author

Srukmana's if statement will achieve better results.

Clients:

Load *,

if(Age>=0 and Age<=17,'0-17 years',if(Age>=70, 'more 70 years', Age&' years')) as AgeFilter;

Will load each age and its respective agefilter.

View solution in original post

9 Replies
Not applicable
Author

Maybe try:

Clients:

Load *,

(Age & ' Years') as AgeFilter;

Not sure if this will work or not.

male_carrasco
Creator
Creator

Try

class(expression, interval [ , label [ , offset ]])

Examples:

class( var,10 ) with var = 23 returns '20<=x<30'

class( var,5,'value' ) with

var = 23 returns '20<= value

<25'

class(

var,10,'x',5 ) with var = 23 returns '15<=x<25'

QlikView Tutorial - CLASS Function - YouTube

Bye

Not applicable
Author

The problem is that i have only age in table. Maby somefing like for each?

Not applicable
Author

if(Age>=0 and Age<=17,'0-17 years',if(Age>=70, 'more 70 years', Age&' years'))

Not applicable
Author

Srukmana's if statement will achieve better results.

Clients:

Load *,

if(Age>=0 and Age<=17,'0-17 years',if(Age>=70, 'more 70 years', Age&' years')) as AgeFilter;

Will load each age and its respective agefilter.

Not applicable
Author

See the attached qvw.

Not applicable
Author

hi

try this, hope this helps you

if(Age>=0 and Age<=17,'0-17 yesrs',if(Age>70,'more than 70 years',Age & ' years'))

Not applicable
Author

Thank you all for your answers it really help me alot.

Not applicable
Author

No problem! Good luck