Today's find:

Doing modulus to split digits: This is a simple query, worked well in 'SELECT' clause. But gave out error when Volatile table was created out of it:

A sample of SELECT that ran fine:

**SELECT**

6789 a

,MOD((a/1000),10) (INT)** AS** BIT_POS1

, MOD((a/100),10) (INT)** AS** BIT_POS2

, MOD((a/10),10) (INT)** AS** BIT_POS3

, MOD(a,10) (INT)** AS** BIT_POS4;

Volatile table that gave out error:

**CREATE**** VOLATILE**** TABLE** DIGIT_VT** AS**

(

**SELECT**

6789 a

,MOD((a/1000),10) (INT)** AS** BIT_POS1

, MOD((a/100),10) (INT)** AS** BIT_POS2

, MOD((a/10),10) (INT)** AS** BIT_POS3

, MOD(a,10) (INT)** AS** BIT_POS4;

)** WITH**** DATA**

**PRIMARY**** INDEX**(a)

**ON**** COMMIT**** PRESERVE** ROWS;

Modified format:

**CREATE**** VOLATILE**** TABLE** DIGIT_VT** AS**

(

**SELECT**

6789 a

,((a/1000) MOD 10) (INT)** AS** BIT_POS1

,((a/100) MOD 10) (INT)** AS** BIT_POS2

,((a/10) MOD 10) (INT)** AS** BIT_POS3

,(a MOD 10) (INT)** AS** BIT_POS4

)** WITH**** DATA**

**PRIMARY**** INDEX**(a)

**ON**** COMMIT**** PRESERVE** ROWS;

Note: Method1 didn’t work when selected from derived table/subquery as well :(

~Meena