我正在使用hibernate来管理我的应用程序中的数据库操作和MySQL - 使用org.hibernate.dialect.MySQLInnoDBDialect作为hibernate方言。但出于测试目的,我使用的是HSQLDB 1.8.0.10。
我有这样的查询问题(在mysql上运行不好,而不是在hsql上):
SELECT DISTINCT(id) FROM table ORDER BY name;
我知道问题是通过(http://weblogs.sqlteam.com/jeffs/archive/2007/12/13/select-distinct-order-by-error.aspx)进行区分和排序,例如:
SELECT DISTINCT(id) FROM table GROUP BY id ORDER BY MAX(name);
但我的问题是,如果有可能在HSQLDB中使用MySQL方言而不必使用此解决方案吗?
答案 0 :(得分:2)
HSQLDB正确实现了SQL标准,不允许模糊查询。不可能改变它的行为。
最好将MySQL查询修改为符合标准。这允许您更轻松地将应用程序移植到另一个数据库。