今天用hibernate执行原生sql语句
select a.id,b.id from vod_program a left join vod_actor_program b on a.name = b.nameram b on a.name = b.name
时,获取到的结果集第二个跟字段总是跟第一个字段值是相同的,debug发现hibernate在处理列名时相同的列名会被当做同一列而不会区别取值,所以两列值都是一样的。所以表达式改成这样:
就可以了。select ifnull(a.id,""),ifnull(b.id,"") from vod_program a left join vod_actor_program b on a.name = b.name