Name | Operand Type | Result Type | Description | |||
---|---|---|---|---|---|---|
byte(expr [, len]) | any | byte | Converts the expression to byte binary data. If the optional length argument is specified, the function returns the leftmost len bytes. Len must be a positive integer value that does not exceed the length of the expr argument. | |||
c(expr [, len]) | any | c | Converts argument to c string. If the optional length argument is specified, the function returns the leftmost len characters. Len must be a positive integer value that does not exceed the length of the expr string. | |||
char(expr [, len]) | any | char | Converts argument to char string. If the optional length argument is specified, the function returns the leftmost len characters. Len must be a positive integer value that does not exceed the length of the expr string. | |||
date(expr) | c, text, char, varchar | date | Converts a c, char, varchar or text string to internal date representation. | |||
decimal(expr [,precision[,scale]]) | any except date | decimal | Converts any numeric expression to a decimal value. If scale (number of decimal digits) is omitted, the scale of the result is 0. If precision (total number of digits) is omitted, the precision of the result is determined by the data type of the operand, as follows: Operand Default Datatype Precision smallint 5 integer1 5 integer 11 float 15 float4 15 decimal 15 money 15 Decimal overflow occurs if the result contains more digits to the left of the decimal point than the specified or default precision and scale can accommodate. | |||
dow(expr) | date | c | Converts an absolute date into its day of week (for example, 'Mon,' 'Tue'). The result length is 3. | |||
float4(expr) | c, char, varchar, text, float, money, decimal, integer1, smallint, integer | float4 | Converts the specified expression to float4. | |||
float8(expr) | c, char, varchar, text, float, money, decimal, integer1, smallint, integer | float | Converts the specified expression to float. | |||
hex(expr) | varchar, char, c, text | varchar | Returns the hexadecimal representation of the argument string. The length of the result is twice the length of the argument, because the hexadecimal equivalent of each character requires two bytes. For example, hex('A') returns '61' (ASCII) or 'C1' (EBCDIC). | |||
int1(expr) | c, char, varchar, text, float, money, decimal, integer1, smallint, integer | integer1 | Converts the specified expression to integer1. Decimal and floating-point values are truncated. Numeric overflow will occur if the integer portion of a floating-point or decimal value is too large to be returned in the requested format. | |||
int2(expr) | c, char, varchar, text, float, money, decimal, integer1, smallint, integer | smallint | Converts the specified expression to smallint. Decimal and floating-point values are truncated. Numeric overflow will occur if the integer portion of a floating-point or decimal value is too large to be returned in the requested format. | |||
int4(expr) | c, char, varchar, text, float, money, decimal, integer1, smallint, integer | integer | Converts the specified expression to integer. Decimal and floating-point values are truncated. Numeric overflow will occur if the integer portion of a floating-point or decimal value is too large to be returned in the requested format. | |||
long_byte (expr) | any | long byte | Converts the expression to long byte binary data. | |||
long_varchar (expr) | any | long varchar | Converts the expression to a long varchar. | |||
money(expr) | c, char, varchar, text, float, money, decimal, integer1, smallint, integer | money | Converts the specified expression to internal money representation. Rounds floating-point and decimal values, if necessary. | |||
nchar(expr [, len]) | any | nchar | Converts argument to nchar unicode string. If the optional length argument is specified, the function returns the leftmost len characters. Len must be a positive integer value that does not exceed the length of the expr string. | |||
nvarchar(expr [, len]) | any | nvarchar | Converts argument to nvarchar unicode string. If the optional length argument is specified, the function returns the leftmost len characters. Len must be a positive integer value that does not exceed the length of the expr string. | |||
long_varchar (expr) | c, char, varchar, text, long varchar, long byte | long varchar | Converts the expression to a long varchar. | |||
object_key(expr) | varchar, char, c, text | object_key | Converts the operand to an object_key. | |||
table_key(expr) | varchar, char, c, text | table_key | Converts the operand to a table_key. | |||
text(expr [, len]) | any | text | Converts argument to text string. If the optional length argument is specified, the function returns the leftmost len characters. Len must be a positive integer value that does not exceed the length of the expr string. | |||
unhex(expr) | varchar, c, text | varbyte | Returns the opposite of the hex function. For example, unhex(x'61626320') returns 'abc' and unhex(x'01204161') returns '\001Aa'. Exceptions can occur when a "c" data type suppresses the display of certain stored characters, or when the output data type differs from the input type. Note: The result must be CAST to the desired data type as not all contexts support the display or handling of BYTE and VARBYTE data. | |||
Typically one character is generated for every two hex digits being converted to a printable character. If the hex digit pair being converted does not translate to a printable character, then the value is converted to a backslash (\), followed by the numeric value of the hex digit pair as a three-digit octal value. | ||||||
varbyte(expr [, len]) | any | byte varying | Converts the expression to byte varying binary data. If the optional length argument is specified, the function returns the leftmost len bytes. Len must be a positive integer value that does not exceed the length of the expr argument. | |||
varchar(expr [, len]) | any | varchar | Converts argument to varchar string. If the optional length argument is specified, the function returns the leftmost len characters. Len must be a positive integer value that does not exceed the length of the expr string. |
Data Type or Argument | Result Length |
---|---|
byte | Length of operand |
byte varying | Length of operand |
c | Length of operand |
char | Length of operand |
date | 25 characters |
decimal | Depends on precision and scale of column |
float & float4 | 11 characters; 12 characters on IEEE computers |
integer1 (smallint) | 6 characters |
integer | 6 characters |
integer4 | 13 characters |
long byte | Length of operand |
long varchar | Length of operand |
money | 20 characters |
text | Length of operand |
varchar | Length of operand |
Name | Operand Type | Result Type | Description |
---|---|---|---|
abs(n) | all numeric types and money | same as n | Absolute value of n. |
atan(n) | all numeric types | float | Arctangent of n; returns a value from (-pi/2) to pi/2. |
cos(n) | all numeric types | float | Cosine of n; returns a value from -1 to 1. |
exp(n) | all numeric types and money | float | Exponential of n. |
log(n) ln(n) | all numeric types and money | float | Natural logarithm of n. |
mod(n,b) | integer, smallint, integer1, decimal | same as b | n modulo b. The result is the same data type as b. Decimal values are truncated. |
power(x,y) | all numeric types | float | x to the power of y (identical to x ** y) |
sin(n) | all numeric types | float | Sine of n; returns a value from -1 to 1. |
sqrt(n) | all numeric types and money | float | Square root of n. |
Name | Result Type | Description |
---|---|---|
charextract(c1,n) | varchar | Returns the nth byte of c1. If n is larger than the length of the string, then the result is a blank character. |
concat(c1,c2) | any character data type, byte | Concatenates one string to another. The result size is the sum of the sizes of the two arguments. If the result is a c or char string, it is padded with blanks to achieve the proper length. To determine the data type results of concatenating strings, see the table regarding results of string concatenation. |
left(c1,len) | any character data type | Returns the leftmost len characters of c1. If the result is a fixed-length c or char string, it is the same length as c1, padded with blanks. The result format is the same as c1. |
length(c1) | smallint (for long varchar, returns 4-byte integer) | If c1 is a fixed-length c or char string, returns the length of c1 without trailing blanks. If c1 is a variable-length string, returns the number of characters actually in c1. |
locate(c1,c2) | smallint | Returns the location of the first occurrence of c2 in c1, including trailing blanks from c2. The location is in the range 1 to size(c1). If c2 is not found, the function returns size(c1) + 1. The function size() is described below, in this table. If c1 and c2 are different string data types, c2 is coerced into the c1 data type. |
lowercase(c1) or lower(c1) | any character or Unicode data type | Converts all upper case characters in c1 to lower case. |
pad(c1) | text or varchar | Returns c1 with trailing blanks appended to c1; for instance, if c1 is a varchar string that could hold fifty characters but only has two characters, then pad(c1) appends 48 trailing blanks to c1 to form the result. |
right(c1,len) | any character data type | Returns the rightmost len characters of c1. Trailing blanks are not removed first. If c1 is a fixed-length character string, the result is padded to the same length as c1. If c1 is a variable-length character string, no padding occurs. The result format is the same as c1. |
shift(c1,nshift) | any character data type | Shifts the string nshift places to the right if nshift > 0 and to the left if nshift < 0. If c1 is a fixed-length character string, the result is padded with blanks to the length of c1. If c1 is a variable-length character string, no padding occurs. The result format is the same as c1. |
size(c1) | smallint | Returns the declared size of c1 without removal of trailing blanks. |
soundex(c1) | any character data type | Returns a c1 four-character field that can be used to find similar sounding strings. For example, SMITH and SMYTHE produce the same soundex code. If there are less than three characters, the result is padded by trailing zero(s). If there are more than three characters, the result is achieved by dropping the rightmost digit(s). This function is useful for finding like-sounding strings quickly. A list of similar sounding strings can be shown in a search list rather than just the next strings in the index. |
squeeze(c1) | text or varchar | Compresses white space. White space is defined as any sequence of blanks, null characters, newlines (line feeds), carriage returns, horizontal tabs and form feeds (vertical tabs). Trims white space from the beginning and end of the string, and replaces all other white space with single blanks. This function is useful for comparisons. The value for c1 must be a string of variable‑length character string data type (not fixed-length character data type). The result is the same length as the argument. |
substring(c1 from n1 [for n2]) | varchar or nvarchar | Returns a substring of parameter c1 starting at offset n1. If n2 is specified, the resulting string is min(n2, length(c1)-n1) in length. If n1 is 0 or negative, the resulting substring starts with the 1st byte of c1. If n1 > length(c1), the resulting string has length 0. If n2 is negative, an error is returned. |
trim(c1) | text or varchar | Returns c1 without trailing blanks. The result has the same length as c1. |
notrim(c1) | any character string variable | Retains trailing blanks when placing a value in a varchar column. This function can only be used in an embedded OpenSQL program. For more information, see the Embedded SQL Companion Guide. |
uppercase(c1) or upper(c1) | any character or Unicode data type | Converts all lower case characters in c1 to upper case. |
1st String | 2nd String | Trim Blanks | Result Type | ||
---|---|---|---|---|---|
from 1st? | from 2nd? | ||||
c | c | Yes | -- | c | |
c | text | Yes | -- | c | |
c | char | Yes | -- | c | |
c | varchar | Yes | -- | c | |
c | long varchar | Yes | No | long varchar | |
text | c | No | -- | c | |
char | c | Yes | -- | c | |
varchar | c | No | -- | c | |
long varchar | c | No | No | long varchar | |
text | text | No | No | text | |
text | char | No | Yes | text | |
text | varchar | No | No | text | |
text | long varchar | No | No | long varchar | |
char | text | Yes | No | text | |
varchar | text | No | No | text | |
long varchar | text | No | No | long varchar | |
char | char | No | -- | char | |
char | varchar | No | -- | char | |
char | long varchar | No | No | long varchar | |
varchar | char | No | -- | char | |
long varchar | char | No | No | long varchar | |
varchar | varchar | No | No | varchar | |
long varchar | long varchar | No | No | long varchar |
Date Portion | How Specified |
---|---|
Second | second, seconds, sec, secs |
Minute | minute, minutes, min, mins |
Hour | hour, hours, hr, hrs |
Day | day, days |
Week | week, weeks, wk, wks |
ISO-Week | iso-week, iso-wk |
Month | month, months, mo, mos |
Quarter | quarter, quarters, qtr, qtrs |
Year | year, years, yr, yrs |
Date Column | Day of Week | Week | ISO-Week |
---|---|---|---|
02-jan-1998 | Fri | 0 | 1 |
04-jan-1998 | Sun | 0 | 1 |
02-jan-1999 | Sat | 0 | 53 |
04-jan-1999 | Mon | 1 | 1 |
02-jan-2000 | Sun | 0 | 52 |
04-jan-2000 | Tue | 1 | 1 |
02-jan-2001 | Tue | 1 | 1 |
04-jan-2001 | Thu | 1 | 1 |
Col1 | Col2 | Col3 | Col4 |
---|---|---|---|
-920527466 | 1526341860 | -920527466 | -1447292811 |