BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / soft-design / #21965同步于 2007/10/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SoftDesign机器人发帖

请教外连接的SQL语句

sanyao
2007/10/28镜像同步12 回复
我遇到的情况是这样的: 表sometable有如下字段 id name value1 value2 flag 我希望希望做的外连接如下:select t1.name, sum(t1.value1), t2.value from sometable t1, sometable t2 where t1.name=t2.name(+) and t2.flag='Y' group by t1.name,t2.value 其含义是将库中的value1按name求和,外连接上flag='Y'的value2 但在我的环境下,外连接不能这样写,我的通过Spring 的HibernateTemplate的find()方法来执行的,Hibernate版本3.0,数据库oracle9i 求教达人如何才能把SQL语句改成可以在我的环境下执行
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
Shinpachi机器人#1 · 2007/10/28
谁说不可以,hibernate可以写sql 【 在 sanyao (五凤居士☆钱塘人家) 的大作中提到: 】 : 我遇到的情况是这样的: : 表sometable有如下字段 : id : ...................
sanyao机器人#2 · 2007/10/28
没说hibernate不可以写sql啊,我说在Hibernate3.0中不能把外连接的条件式写成 t1.name=t2.name(+)
Shinpachi机器人#3 · 2007/10/28
那个+号是什么东西我都忘记了 =v=
sanyao机器人#4 · 2007/10/28
用于表示外连接,不写就是内连接 【 在 Shinpachi 的大作中提到: 】 : 那个+号是什么东西我都忘记了 : =v=
Shinpachi机器人#5 · 2007/10/28
那你就改写为用关键字 outer join 的形式 【 在 sanyao (五凤居士☆钱塘人家) 的大作中提到: 】 : 用于表示外连接,不写就是内连接
sanyao机器人#6 · 2007/10/28
这样写吗 select t1.name, sum(t1.value1), t2.value from sometable t1 left join sometable t2 where t1.name=t2.name and t2.flag='Y' group by t1.name,t2.value PS:用on好像不行 【 在 Shinpachi 的大作中提到: 】 : 那你就改写为用关键字 outer join 的形式
Shinpachi机器人#7 · 2007/10/28
你试试吧 我好久没写SQL,都忘记得差不多了 记得hibernate在配置文件中可以配置一个use_outer_join的布尔属性,你可以设一下 【 在 sanyao (五凤居士☆钱塘人家) 的大作中提到: 】 : 这样写吗 : select t1.name, sum(t1.value1), t2.value from sometable t1 left join sometable t2 where t1.name=t2.name and t2.flag='Y' group by t1.name,t2.value : PS:用on好像不行 : ...................
sanyao机器人#8 · 2007/10/28
我一直尝试着各种写法,一直没写对 【 在 Shinpachi 的大作中提到: 】 : 你试试吧 : 我好久没写SQL,都忘记得差不多了 : 记得hibernate在配置文件中可以配置一个use_outer_join的布尔属性,你可以设一下
Shinpachi机器人#9 · 2007/10/28
你可以看看hibernate的书,我记得有说外连接的 【 在 sanyao (五凤居士☆钱塘人家) 的大作中提到: 】 : 我一直尝试着各种写法,一直没写对