Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
run the following script ,I get xx.qvd;
what's wrong with it ?
test:
load *;
select 2 as a,4 as b;
Concatenate
select 3 as a,5 as b;
let xx=max(FieldValue( 'a', 1 ));
let yy=max(FieldValue( 'b', 1 ));
if xx<yy then
store test into yy.qvd;
ELSE
store test into xx.qvd;
ENDIF;
Hi,
If you need max and minimum value you need to do like this.
test:
LOAD 2 as a,4 as b AutoGenerate 1;
Concatenate
Load 3 as a,5 as b AutoGenerate 1;
tempMax:
Load Max(a) as Maxa,Max(b) as Maxb Resident test;
let xx=FieldValue( 'Maxa', 1 );
let yy=FieldValue( 'Maxb', 1 );
Drop table tempMax;
if xx<yy then
store test into yy.qvd;
ELSE
store test into xx.qvd;
ENDIF;
Celambarasan
Hi,
You should not use max for assigning to the variables.
Change it like this
let xx=FieldValue( 'a', 1 );
let yy=FieldValue( 'b', 1 );
Hi,
If you need max and minimum value you need to do like this.
test:
LOAD 2 as a,4 as b AutoGenerate 1;
Concatenate
Load 3 as a,5 as b AutoGenerate 1;
tempMax:
Load Max(a) as Maxa,Max(b) as Maxb Resident test;
let xx=FieldValue( 'Maxa', 1 );
let yy=FieldValue( 'Maxb', 1 );
Drop table tempMax;
if xx<yy then
store test into yy.qvd;
ELSE
store test into xx.qvd;
ENDIF;
Celambarasan
Also, you may need to call your variables with $...
test:
load *;
select 2 as a,4 as b;
Concatenate
select 3 as a,5 as b;
let xx=max(FieldValue( 'a', 1 ));
let yy=max(FieldValue( 'b', 1 ));
if $(xx)<$(yy) then
store test into yy.qvd;
ELSE
store test into xx.qvd;
ENDIF;
Hope this helps,
Jason
Thanks all