【问题标题】:Use SUBSTR in HSQL left outer join clause在 HSQL 左外连接子句中使用 SUBSTR
【发布时间】:2013-02-27 11:12:48
【问题描述】:

我需要使用 HSQL 执行以下查询(使用 ORACLE 可以正常工作):

select t.name as sh_name,
         b.name as sh_bName
from PERSON t 
       left outer join TRANS tr on t.id=tr.tid
       left outer join AGREEM agr on tr.tripNumber=SUBSTR(agr.coll_external,1,4)
       left outer join PERSON b on (b.TYP='BROKER' and agr.broker_id = b.id)

where t.TYP='TRADER'

我收到以下错误:not allowed in OUTER JOIN condition in statement。问题来自SUBSTR 的使用,没有它我不会收到任何错误。在 Oracle 中,上述语句工作得很好。

知道如何在 HSQL 的连接子句中使用 SUBSTR 吗?

【问题讨论】:

    标签: left-join hsqldb outer-join


    【解决方案1】:

    这是旧版本 HSQLDB 的限制。

    较新的 2.x 版本允许在 OUTER JOIN 条件下使用 SUBSTR 或任何其他函数。

    最新版本还支持兼容模式,以改进对 Oracle 数据类型和特性的处理。

    【讨论】:

    • 所以更新版本的 hsqldb 将是解决方案...坦克!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多