<length expression> ::=
<char length expression> ::=

{ CHAR_LENGTH | CHARACTER_LENGTH } ( <string value expression>

[ USING <char length units> ] )

<octet length expression> ::=

OCTET_LENGTH ( <string value expression> )


CHAR_LENGTH and CHARACTER_LENGTH are equivalent functions that return the number of characters or bytes in a character string according to the implicit or explicit char length unit, or the number of bytes in a binary string.
The USING clause shall only be specified if the argument is a UNICODE character string. CHARACTERS is implicit if a char length unit is not specified.
The OCTET_LENGTH function returns the number of octets (bytes) in a character or binary string.
The data type of the result is INTEGER.
If the argument is null, then the result is null.


1) The following example selects students who have a longer last name than first name:

       SELECT firstName, lastName

       FROM students

       WHERE CHAR_LENGTH( lastName ) > CHARACTER_LENGTH( firstName )

2) In the following example, the CHAR_LENGTH function returns 5 with the CHARACTERS char length unit implicitly specified:

       SELECT CHAR_LENGTH( N'Grace' )

       FROM #dummy

3) In the following example, the CHAR_LENGTH function returns 10 with the OCTETS char length unit explicitly specified:


       FROM #dummy


SQL:2003 standard


Core SQL

Home | Site Contents | Documentation | NexusDB Manual V4 | SQL Reference | SQL Functions | Numeric Value Functions