public final class ToCharFunction extends FunctionN
| Modifier and Type | Class and Description |
|---|---|
static class |
ToCharFunction.Capitalization
Represents a capitalization / casing strategy.
|
| Modifier and Type | Field and Description |
|---|---|
static int |
JULIAN_EPOCH
The beginning of the Julian calendar.
|
static int |
MONTHS
The month field.
|
static int |
SHORT_MONTHS
The month field (short form).
|
static int |
SHORT_WEEKDAYS
The weekday field (short form).
|
static int |
WEEKDAYS
The weekday field.
|
args, argsCount, typeAUTO_PARENTHESES, MAP_IN_AGGREGATE, MAP_IN_WINDOW, MAP_INITIAL, WITH_PARENTHESES, WITHOUT_PARENTHESESADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS| Constructor and Description |
|---|
ToCharFunction(Expression arg1,
Expression arg2,
Expression arg3) |
| Modifier and Type | Method and Description |
|---|---|
static void |
clearNames()
Used for testing.
|
static java.lang.String[] |
getDateNames(int names)
Get the date (month / weekday / ...) names.
|
java.lang.String |
getName()
Get the name.
|
Value |
getValue(SessionLocal session,
Value v1,
Value v2,
Value v3)
Returns the value of this function.
|
Expression |
optimize(SessionLocal session)
Try to optimize the expression.
|
static java.lang.String |
toChar(java.math.BigDecimal number,
java.lang.String format,
java.lang.String nlsParam)
Emulates Oracle's TO_CHAR(number) function.
|
static java.lang.String |
toCharDateTime(SessionLocal session,
Value value,
java.lang.String format,
java.lang.String nlsParam)
Emulates Oracle's TO_CHAR(datetime) function.
|
getUnenclosedSQL, getValueaddParameter, doneWithParameters, getCost, getSubexpression, getSubexpressionCount, getType, isEverything, mapColumns, optimizeArguments, setEvaluatable, updateAggregateaddFilterConditions, createIndexConditions, getAlias, getBooleanValue, getColumnName, getColumnNameForView, getEnclosedSQL, getNonAliasExpression, getNotIfPossible, getNullable, getSchemaName, getSQL, getSQL, getSQL, getSQL, getTableAlias, getTableName, getWhenSQL, getWhenValue, isConstant, isIdentity, isNullConstant, isValueSet, isWhenConditionOperand, needParentheses, optimizeCondition, toString, writeExpressions, writeExpressionsclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetTraceSQLpublic static final int JULIAN_EPOCH
public static final int MONTHS
public static final int SHORT_MONTHS
public static final int WEEKDAYS
public static final int SHORT_WEEKDAYS
public ToCharFunction(Expression arg1, Expression arg2, Expression arg3)
public static java.lang.String toChar(java.math.BigDecimal number,
java.lang.String format,
java.lang.String nlsParam)
| Input | Output | Closest DecimalFormat Equivalent |
|---|---|---|
| , | Grouping separator. | , |
| . | Decimal separator. | . |
| $ | Leading dollar sign. | $ |
| 0 | Leading or trailing zeroes. | 0 |
| 9 | Digit. | # |
| B | Blanks integer part of a fixed point number less than 1. | # |
| C | ISO currency symbol. | ¤ |
| D | Local decimal separator. | . |
| EEEE | Returns a value in scientific notation. | E |
| FM | Returns values with no leading or trailing spaces. | None. |
| G | Local grouping separator. | , |
| L | Local currency symbol. | ¤ |
| MI | Negative values get trailing minus sign, positive get trailing space. | - |
| PR | Negative values get enclosing angle brackets, positive get spaces. | None. |
| RN | Returns values in Roman numerals. | None. |
| S | Returns values with leading/trailing +/- signs. | None. |
| TM | Returns smallest number of characters possible. | None. |
| U | Returns the dual currency symbol. | None. |
| V | Returns a value multiplied by 10^n. | None. |
| X | Hex value. | None. |
number - the number to formatformat - the format pattern to use (if any)nlsParam - the NLS parameter (if any)public static java.lang.String[] getDateNames(int names)
names - the fieldpublic static void clearNames()
public static java.lang.String toCharDateTime(SessionLocal session, Value value, java.lang.String format, java.lang.String nlsParam)
| Input | Output | Closest SimpleDateFormat Equivalent |
|---|---|---|
| - / , . ; : "text" | Reproduced verbatim. | 'text' |
| A.D. AD B.C. BC | Era designator, with or without periods. | G |
| A.M. AM P.M. PM | AM/PM marker. | a |
| CC SCC | Century. | None. |
| D | Day of week. | u |
| DAY | Name of day. | EEEE |
| DY | Abbreviated day name. | EEE |
| DD | Day of month. | d |
| DDD | Day of year. | D |
| DL | Long date format. | EEEE, MMMM d, yyyy |
| DS | Short date format. | MM/dd/yyyy |
| E | Abbreviated era name (Japanese, Chinese, Thai) | None. |
| EE | Full era name (Japanese, Chinese, Thai) | None. |
| FF[1-9] | Fractional seconds. | S |
| FM | Returns values with no leading or trailing spaces. | None. |
| FX | Requires exact matches between character data and format model. | None. |
| HH HH12 | Hour in AM/PM (1-12). | hh |
| HH24 | Hour in day (0-23). | HH |
| IW | Week in year. | w |
| WW | Week in year. | w |
| W | Week in month. | W |
| IYYY IYY IY I | Last 4/3/2/1 digit(s) of ISO year. | yyyy yyy yy y |
| RRRR RR | Last 4/2 digits of year. | yyyy yy |
| Y,YYY | Year with comma. | None. |
| YEAR SYEAR | Year spelled out (S prefixes BC years with minus sign). | None. |
| YYYY SYYYY | 4-digit year (S prefixes BC years with minus sign). | yyyy |
| YYY YY Y | Last 3/2/1 digit(s) of year. | yyy yy y |
| J | Julian day (number of days since January 1, 4712 BC). | None. |
| MI | Minute in hour. | mm |
| MM | Month in year. | MM |
| MON | Abbreviated name of month. | MMM |
| MONTH | Name of month, padded with spaces. | MMMM |
| RM | Roman numeral month. | None. |
| Q | Quarter of year. | None. |
| SS | Seconds in minute. | ss |
| SSSSS | Seconds in day. | None. |
| TS | Short time format. | h:mm:ss aa |
| TZD | Daylight savings time zone abbreviation. | z |
| TZR | Time zone region information. | zzzz |
| X | Local radix character. | None. |
See also TO_CHAR(datetime) and datetime format models in the Oracle documentation.
session - the sessionvalue - the date-time value to formatformat - the format pattern to use (if any)nlsParam - the NLS parameter (if any)public Value getValue(SessionLocal session, Value v1, Value v2, Value v3)
FunctionNpublic Expression optimize(SessionLocal session)
Expressionoptimize in class Expressionsession - the sessionpublic java.lang.String getName()
NamedExpression