我有一个从mySQL中的等级函数改编的SQL查询,我想将其与学说一起使用。
看来该系统不喜欢我的查询,我不知道从哪里开始修复它。
此查询在MySQL本身中正常工作,当我使用学说时,我会收到语法错误。
SELECT l.*,
@points:=l.playerPoints + l.organisationPoints,
@curRank := if(@points <> @lastPoints, @curRank + 1, @curRank) AS rank,
@lastPoints:= @points as points
FROM leaderboard l, (SELECT @curRank := 0) r, (SELECT @lastPoints := 0) lp, (SELECT @points := 0) p
ORDER BY l.playerPoints + l.organisationPoints DESC;
[语法错误]第0行,col 10:错误:预期识别可 |scalarexpression |汇总表达|函数销售| partialObjectexpression |"(" subselect")" |casexpression,得到'@'
我正在使用以下PHP代码:
$EntityManager->createQuery(...);
是否可以使用学说2处理此操作?
学说1(MySQL用户定义的变量和Symfony中的变量)似乎可能是可能的。
entityManager :: createquery 用于DQL查询,我认为本机SQL是您需要的(允许您执行任意查询和映射结果以教学实体)。