Name
name_part — Returns portion of dotted name such as a fully qualified table name.
Synopsis
varchar
name_part
(
|
in string varchar , |
in idx integer , | |
in
dstring
varchar
) ; |
Description
The
name_part()
can be used to dissecting parts of a three part names (string
where items are divided by dots ".") such as table names or columns names. The table
name "DB"."DBA"."SYS_USERS" contains three parts which can be extracted individually
using this function providing the correct index from a 0 base: 0 would return "DB",
1 would return "DBA", 2 would return "SYS_USERS".
Parameters
string
The string to be disected.
idx
The part index starting from 0.
dstring
The default value if the found value is null.
Return Types
A string will be returned containing the text from the specified index.
Errors
Table 24.55. Errors signalled by
SQLState | Error Code | Error Text | Description |
---|---|---|---|
22023 | SR014 | Function name_part needs a string as argument 1, not an arg of type [type] | |
22023 | SR008 | Function name_part needs an integer as argument 2, not an arg of type [type] |
Examples
Example 24.224. Using the name_part() function
This simple example shows the 3 parts of a table name being retrieved using the name_part() function from ISQL.
SQL> select name_part('"DB"."DBA"."SYS_TABLES"', 0); callret VARCHAR __________________________________________________________ "DB" 1 Rows. -- 20 msec. SQL> select name_part('"DB"."DBA"."SYS_TABLES"', 1); callret VARCHAR __________________________________________________________ "DBA" 1 Rows. -- 30 msec. SQL> select name_part('"DB"."DBA"."SYS_TABLES"', 2); callret VARCHAR __________________________________________________________ SYS_TABLES" 1 Rows. -- 20 msec.