db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lukas Eder (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-5597) Add support for a SQL REPLACE(in, search, replace) function
Date Fri, 03 Feb 2012 17:31:54 GMT

    [ 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>

<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:
>            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


View raw message