[ 
https://issues.apache.org/jira/browse/DERBY-5597?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13199894#comment-13199894
 ] 

Lukas Eder commented on DERBY-5597:
-----------------------------------

I understand. REPLACE is probably something like a de-facto standard among 
various databases. The SQL:2008 standard (I only have a draft version) states:

----------------------------------------------------------------
6.29 <string value function>

Format
<string value function> ::=
<character value function>
| <binary value function>
<character value function> ::=
<character substring function>
| <regular expression substring function>
| <regex substring function>
| <fold>
| <transcoding>
| <character transliteration>
| <regex transliteration>
| <trim function>
| <character overlay function>
| <normalize function>
| <specific type method>
----------------------------------------------------------------

Interesting functions that would work "like" REPLACE are:

----------------------------------------------------------------
<character transliteration> ::=
TRANSLATE <left paren> <character value expression>
USING <transliteration name> <right paren>

<regex transliteration> ::=
TRANSLATE_REGEX <left paren>
<XQuery pattern> [ FLAG <XQuery option flag> ]
IN <regex subject string>
[ WITH <XQuery replacement string> ]
[ FROM <start position> ]
[ USING <char length units> ]
[ OCCURRENCE <regex transliteration occurrence> ]
<left paren>
----------------------------------------------------------------

This might be a bit of overkill though, if the full syntax was supported. 
Besides, you might be breaking new grounds among common databases.
                
> Add support for a SQL REPLACE(in, search, replace) function
> -----------------------------------------------------------
>
>                 Key: DERBY-5597
>                 URL: https://issues.apache.org/jira/browse/DERBY-5597
>             Project: Derby
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 10.8.2.2
>            Reporter: Lukas Eder
>              Labels: function, sql, string
>
> I don't know any other database that lacks this type of function (even SQLite 
> has it):
> REPLACE(in, search)
> REPLACE(in, search, replace)
> But according to the Derby docs, this doesn't exist in Derby:
> http://db.apache.org/derby/docs/10.8/ref/rrefsqlj29026.html
> It would be quite simple to implement, I guess. Yet really useful for many 
> people. Some documentation examples from other databases:
> http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions134.htm
> http://msdn.microsoft.com/de-de/library/ms186862.aspx
> http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2.doc.sqlref%2Ffrepl.htm
> http://dev.mysql.com/doc/refman/5.1/en/string-functions.html#function_replace
> http://hsqldb.org/doc/2.0/guide/builtinfunctions-chapt.html#N135A7

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to