Sql HQL相同的表选择似乎用最新的值覆盖列

Sql HQL相同的表选择似乎用最新的值覆盖列,sql,hibernate,nhibernate-mapping,h2,Sql,Hibernate,Nhibernate Mapping,H2,我在hibernate中遇到了一个测试本机sql脚本的问题,我正在将数据从csv加载到h2数据库中 问题是当我这样做的时候: Select t1.name, t2.name FROM Person as t1, Person as t2 where t1.name='TOTO' and t2.name!='TITI' 我得到了正确的值,除非t1.name似乎被t2.name替换 PS:同样的脚本在SQLDeveloper中运行良好 任何提示或帮助都将不胜感激:我怀疑问题在于别名混淆,因为它们

我在hibernate中遇到了一个测试本机sql脚本的问题,我正在将数据从csv加载到h2数据库中

问题是当我这样做的时候:

Select t1.name, t2.name FROM Person as t1, Person as t2  where t1.name='TOTO' and t2.name!='TITI'
我得到了正确的值,除非t1.name似乎被t2.name替换

PS:同样的脚本在SQLDeveloper中运行良好


任何提示或帮助都将不胜感激:

我怀疑问题在于别名混淆,因为它们是相同的。尝试将其用作:


谢谢你的帮助,我试过化名,没用。我怀疑hibernate是因为我断开了它与H2的连接,现在我直接在Oracle数据库上进行测试,但仍然存在相同的问题。@Sifmon。我删除了as。Oracle不允许from子句中的那些。具有讽刺意味的是,我之所以使用它们,只是因为它们出现在您最初的查询中;我认为在from子句中使用as只会使查询变得杂乱无章。查询并不是真正的问题,真正的查询比仅举个例子给出的查询更复杂。我仍然怀疑Hibernate,但我不知道Hibernate为什么会这样。提醒一下,如果从SQLDeveloper执行相同的查询,那么同样的查询工作得很好……也许您应该编辑您的问题,并提供查询工作和不工作的示例。
Select t1.name as name1, t2.name as name2
FROM Person t1, Person t2 
where t1.name = 'TOTO' and t2.name <> 'TITI';