Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dev:sql:functions:position [2009/12/05 00:35]
tdo
dev:sql:functions:position [2016/06/28 22:38] (current)
Line 1: Line 1:
 {{page>:​top_add&​nofooter&​noeditbtn}} {{page>:​top_add&​nofooter&​noeditbtn}}
-<​html><​div align="​center"><​span style="​color:​red">​DRAFT</​span></​div></​html>​ 
-====== Omnidex SQL Function: POSITION ====== 
 {{page>:​sql_bar&​nofooter&​noeditbtn}} {{page>:​sql_bar&​nofooter&​noeditbtn}}
 +====== Omnidex SQL Function: POSITION ======
 ===== Description ===== ===== Description =====
-Find the position of string1 in string2. ​The POSITION function ​returns ​the position of a string (string1) within another string (string2). If string2 ​is of length zero, the result is 1. If string1 ​occurs as a substring within ​string2, the character position where string1 ​first occurs is returned. If neither of these conditions is true, the result is 0. The return data type is 4-byte INTEGER.+The POSITION function ​finds the position of a search_string in a target_string. If the target_string ​is of length zero, the result is 1. If the search_string ​occurs as a substring within ​the target_string, the character position where the search_string ​first occurs is returned. If neither of these conditions is true, the result is 0.  
 + 
 +String comparisons are case-sensitive. Use the UPPER and LOWER functions around the search_string and the target_string to produce ​case-insensitive search. 
 + 
 +This function returns an INTEGER ​datatype.
  
-String comparisons are case-sensitive. Use the UPPER and LOWER functions around string1 and string2 to produce a case-insensitive search. 
 ===== Syntax ===== ===== Syntax =====
-  POSITION( <​column_spec | '​string1'​ > IN < column_spec | '​string2'​ > ) 
  
-== string1 == +  POSITION( search_expression IN target_expression)
-Required. Any column_spec or valid text string. The text to search for.+
  
-== IN == +== search_expression ===
-Required.+
  
-== string2 ​== +Any expression that returns a character-class datatype to be used as the search criteria. ​ Examples of expressions are columns, concatenations of columns, literal strings and functions that return a character datatype. ​  
-Required. ​Any column_spec or valid text string. The text in which to search ​for string1.+ 
 +== target_expression ​== 
 + 
 +Any expression that returns a character-class datatype ​to be used as the search ​target. ​ Examples of expressions are columns, concatenations of columns, literal strings and functions that return a character datatype 
  
 ===== Example ===== ===== Example =====
-==== Example 1 ==== +==== Example 1: Column ​====
-<code SQL> +
-select company,  +
-position(upper('​sys'​) IN upper(customers.company))  +
-from customers where company='​systems'​+
  
-Company ​                ​Position +<​code>​ 
--------- ​               --------------- +> select name, position('​.'​ in name) pos from individuals;​ 
-Camco Systems ​          7 + 
-SoftSys Corp            5+NAME                                                POS 
 +-------------------------------------------------- ​ ----------- 
 +MS. MARY LEWIS                                                3 
 +MRS. ALICE R TOLLIVER ​                                        4 
 +MR. SIDNEY K TOLLIVER ​                                        3 
 +MRS. JENNIFER J HOPKINS ​                                      4 
 +MR. CHARLIE HOPKINS ​                                          3 
 +MS. KIMBERLY BLUE                                             3 
 +KATHLEEN TUCKER ​                                              0
  
 </​code>​ </​code>​
 +
 +==== Example 2: Complex expression ====
 +
 +The following example removes the salutation from the name.
 +
 +<​code>​
 +> select ​       trim(
 +>> ​                ​substring(NAME
 +>> ​                  from position('​.'​ in NAME) + 1
 +>> ​                  for $column_length(NAME) - position('​.'​ in NAME))) nme
 +>> ​  ​from ​       INDIVIDUALS;​
 +
 +NME
 +--------------------------------------------------
 +MARY LEWIS
 +ALICE R TOLLIVER
 +SIDNEY K TOLLIVER
 +JENNIFER J HOPKINS
 +CHARLIE HOPKINS
 +KIMBERLY BLUE
 +KATHLEEN TUCKER
 +</​code>​
 +====== Additional Resources ======
 +
 +See also:
 +{{page>​dev:​sql:​functions:​see_also_string&​nofooter&​noeditbtn&​noheader}}
 +
 +
 {{page>:​bottom_add&​nofooter&​noeditbtn}} {{page>:​bottom_add&​nofooter&​noeditbtn}}
 
Back to top
dev/sql/functions/position.1259973350.txt.gz · Last modified: 2016/06/28 22:38 (external edit)