SQL转HQL:Join与Delete语句转换技术求助
帮你把SQL转成HQL的实用建议
嘿,看来你在把SQL转成HQL的过程中遇到瓶颈啦!不过目前还没看到你具体的SQL查询语句和已经完成的HQL片段哦~
先给你几个通用的转译小技巧,说不定能帮你先捋捋思路:
- HQL是面向实体类的,要写实体类的名称和属性名,不是数据库的表名和字段名(注意实体类名一般首字母大写,属性名和实体类定义保持一致)
- 举个例子:SQL里的
SELECT u.user_id FROM user u,对应HQL可能是SELECT u.userId FROM User u(假设实体类叫User,属性是userId) - 部分SQL原生函数在HQL里需要用
FUNCTION()包裹调用,比如SQL的DATE_FORMAT(create_time, '%Y-%m-%d'),HQL要写成FUNCTION('date_format', u.createTime, '%Y-%m-%d') - 关联查询时要依赖实体类里定义的关联关系,比如直接写
JOIN u.orders o,而不是SQL里的JOIN order o ON u.user_id = o.user_id
你把具体的SQL和已经写好的HQL部分贴出来,我就能帮你精准调整啦!
内容的提问来源于stack exchange,提问作者Mssm
相关产品推荐
相关产品推荐

