[ 
https://issues.apache.org/jira/browse/OPENJPA-338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kevin Sutter reassigned OPENJPA-338:
------------------------------------

    Assignee: Teresa Kan

> Remove unnecessary CAST in SQL statement for DB2
> ------------------------------------------------
>
>                 Key: OPENJPA-338
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-338
>             Project: OpenJPA
>          Issue Type: Improvement
>          Components: sql
>    Affects Versions: 1.0.0
>         Environment: Window XP, JDK 1.5
>            Reporter: Teresa Kan
>            Assignee: Teresa Kan
>             Fix For: 1.0.1
>
>         Attachments: OPENJPA-338.patch, OPENJPA338-comparsion.txt
>
>
> There were unnecessary CAST added to the SQL statements that can be removed 
> to improve the performance. The change will eliminate the CAST for the 
> constants. For example, the original query is :
> Executing query: select d from DogABS d where LENGTH(d.name) < 10
> The current generated SQL statement:
> executing prepstmnt 1335250838 SELECT t0.id2, t0.datastoreid, t0.domestic, 
> t0.name, t0.price, t0.total FROM DOGABS t0 WHERE (CAST(LENGTH(CAST(t0.name AS 
> VARCHAR(1000))) AS BIGINT) < CAST(? AS BIGINT))  [params=(long) 10]
> After the changes:
> executing prepstmnt 1749706826 SELECT t0.id2, t0.datastoreid, t0.domestic, 
> t0.name, t0.price, t0.total FROM DOGABS t0 WHERE (LENGTH(t0.name) < ?)  
> [params=(long) 10]

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to