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

Announcements
Qlik Connect 2026 Agenda Now Available: Explore Sessions
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

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