Data type assignments and comparison, sorting, and ordering

Table 1. Assignments allowed by Derby. This table displays valid assignments between data types in Derby. A "Y" indicates that the assignment is valid.
Types

S
M
A
L
L
I
N
T

I
N
T
E
G
E
R

B
I
G
I
N
T

D
E
C
I
M
A
L

R
E
A
L

D
O
U
B
L
E

F
L
O
A
T

C
H
A
R

V
A
R
C
H
A
R

L
O
N
G

V
A
R
C
H
A
R

C
H
A
R

F
O
R

B
I
T

D
A
T
A

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

L
O
N
G

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

C
L
O
B

B
L
O
B

D
A
T
E

T
I
M
E

T
I
M
E
S
T
A
M
P

X
M
L

SMALL INT Y Y Y Y Y Y Y - - - - - - - - - - - -
INTEGER Y Y Y Y Y Y Y - - - - - - - - - - - -
BIGINT Y Y Y Y Y Y Y - - - - - - - - - - - -
DECIMAL Y Y Y Y Y Y Y - - - - - - - - - - - -
REAL Y Y Y Y Y Y Y - - - - - - - - - - - -
DOUBLE Y Y Y Y Y Y Y - - - - - - - - - - - -
FLOAT Y Y Y Y Y Y Y - - - - - - - - - - - -
CHAR - - - - - - - Y Y Y - - - Y - Y Y Y -
VARCHAR - - - - - - - Y Y Y - - - Y - Y Y Y -
LONG VARCHAR - - - - - - - Y Y Y - - - Y - - - - -
CHAR FOR BIT DATA - - - - - - - - - - Y Y Y - - - - - -
VARCHAR FOR BIT DATA - - - - - - - - - - Y Y Y - - - - - -
LONG VARCHAR FOR BIT DATA - - - - - - - - - - Y Y Y - - - - - -
CLOB - - - - - - - Y Y Y - - - Y - - - - -
BLOB - - - - - - - - - - - - - - Y - - - -
DATE - - - - - - - Y Y - - - - - - Y - - -
TIME - - - - - - - Y Y - - - - - - - Y - -
TIME STAMP - - - - - - - Y Y - - - - - - - - Y -
XML - - - - - - - - - - - - - - - - - - Y
Table 2. Comparisons allowed by Derby. This table displays valid comparisons between data types in Derby. A "Y" indicates that the comparison is allowed.
Types

S
M
A
L
L
I
N
T

I
N
T
E
G
E
R

B
I
G
I
N
T

D
E
C
I
M
A
L

R
E
A
L

D
O
U
B
L
E

F
L
O
A
T

C
H
A
R

V
A
R
C
H
A
R

L
O
N
G

V
A
R
C
H
A
R

C
H
A
R

F
O
R

B
I
T

D
A
T
A

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

L
O
N
G

V
A
R
C
H
A
R

F
O
R

B
I
T

D
A
T
A

C
L
O
B

B
L
O
B

D
A
T
E

T
I
M
E

T
I
M
E
S
T
A
M
P

X
M
L

SMALL INT Y Y Y Y Y Y Y - - - - - - - - - - - -
INTEGER Y Y Y Y Y Y Y - - - - - - - - - - - -
BIGINT Y Y Y Y Y Y Y - - - - - - - - - - - -
DECIMAL Y Y Y Y Y Y Y - - - - - - - - - - - -
REAL Y Y Y Y Y Y Y - - - - - - - - - - - -
DOUBLE Y Y Y Y Y Y Y - - - - - - - - - - - -
FLOAT Y Y Y Y Y Y Y - - - - - - - - - - - -
CHAR - - - - - - - Y Y - - - - - - Y Y Y -
VARCHAR - - - - - - - Y Y - - - - - - Y Y Y -
LONG VARCHAR - - - - - - - - - - - - - - - - - - -
CHAR FOR BIT DATA - - - - - - - - - - Y Y - - - - - - -
VARCHAR FOR BIT DATA - - - - - - - - - - Y Y - - - - - - -
LONG VARCHAR FOR BIT DATA - - - - - - - - - - - - - - - - - - -
CLOB - - - - - - - - - - - - - - - - - - -
BLOB - - - - - - - - - - - - - - - - - - -
DATE - - - - - - - Y Y - - - - - - Y - - -
TIME - - - - - - - Y Y - - - - - - - Y - -
TIME STAMP - - - - - - - Y Y - - - - - - - - Y -
XML - - - - - - - - - - - - - - - - - - -
Related concepts
Built-In type overview
Numeric types
Related reference
BIGINT
BLOB
CHAR
CHAR FOR BIT DATA
CLOB
DATE
DECIMAL
DOUBLE
DOUBLE PRECISION
FLOAT
INTEGER
LONG VARCHAR
LONG VARCHAR FOR BIT DATA
NUMERIC
REAL
SMALLINT
TIME
TIMESTAMP
VARCHAR
VARCHAR FOR BIT DATA
XML data type