Qlik Community

Ask a Question

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
Become an analytics expert with Qlik's new 15 week course: Applied Data Analytics using Qlik Sense. READ MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
saivina2920
Creator
Creator

Conditional Match not working properly

I'm using where condition with Match. But, this will not return anything. below is my query. It will return zero record found.

TABLE1:
LOAD "EMPNO",
"EMPNAME",
"DEPARTMENT"
Where Match("EMPNO",'EP100001');
SQL SELECT *
FROM EMPSCHEMA."EMPLOYEELIST";

What is the problem in the above query..?

Labels (2)
1 Solution

Accepted Solutions
PrashantSangle

yes.
use where condition in sql statement;

try below
TABLE1:
LOAD "EMPNO",
"EMPNAME",
"DEPARTMENT"
;
SQL SELECT *
FROM EMPSCHEMA."EMPLOYEELIST"
Where EMPNO='EP100001'
;

If you want enter multiple no then use in()
Great dreamer's dreams never fulfilled, they are always transcended.

View solution in original post

11 Replies
PrashantSangle

try by removing " before and after EMPNO
If it still not work.
Please provide more info

when you run without where condition then is it capturing record for EP100001? can you share screen shot of it.
Is it EMPNO contain space before or after EP100001 value?
try below suggestion instead of Where Match("EMPNO",'EP100001')
1:Where EMPNO='EP100001';
2: Where trim(UPPER(EMPNO))='EP100001';
3: Where wildmatch(EMPNO,'EP100001');

Regards,
Prashant Sangle
Great dreamer's dreams never fulfilled, they are always transcended.
saivina2920
Creator
Creator
Author

I used all the three below. but, still return 0 records. .
when i run without where condition, it showing all the records.
1:Where EMPNO='EP100001';
2: Where trim(UPPER(EMPNO))='EP100001';
3: Where wildmatch(EMPNO,'EP100001');
?????
PrashantSangle

when you run without condition then check data is available for EP100001?

try below
Temp:
LOAD "EMPNO",
"EMPNAME",
"DEPARTMENT"
;
SQL SELECT *
FROM EMPSCHEMA."EMPLOYEELIST";
NoConcatenate
Test:
Load *
Resident Temp
Where EMPNO='EP100001';

Drop table Temp;
Great dreamer's dreams never fulfilled, they are always transcended.
sunny_talwar

Are you sure you have EP100001 within EMPNO?

saivina2920
Creator
Creator
Author

yes...
sunny_talwar

I guess that is what @PrashantSangle hinted towards... can you load the complete data and share a screenshot for EMPNO in a list box so that we can see EP100001 in the data to see how it looks like.

saivina2920
Creator
Creator
Author

The below query is working... How...?
Temp:
LOAD "EMPNO",
"EMPNAME",
"DEPARTMENT"
;
SQL SELECT *
FROM EMPSCHEMA."EMPLOYEELIST";
NoConcatenate
Test:
Load *
Resident Temp
Where EMPNO='EP100001';

Drop table Temp;

Can we simplified the query again in simple way...?
PrashantSangle

yes.
use where condition in sql statement;

try below
TABLE1:
LOAD "EMPNO",
"EMPNAME",
"DEPARTMENT"
;
SQL SELECT *
FROM EMPSCHEMA."EMPLOYEELIST"
Where EMPNO='EP100001'
;

If you want enter multiple no then use in()
Great dreamer's dreams never fulfilled, they are always transcended.

View solution in original post

saivina2920
Creator
Creator
Author

What happened if i pass multiple values in where condition...like ('EP100001','EP100010',..).
Will it work...?