开发者社区 问答 正文

Yii2 数据库操作求解?报错

现在有这样的一个数据库查询语句,我在Navicat里可以查询,但放到Yii2的框架已就报错,求高手指点,谢谢~

SET @ranking = 0;
SELECT
	*
FROM
	(
		SELECT
			*, @ranking :=@ranking + 1 AS ranking
		FROM
			user_match
		WHERE
			user_id != ''
		ORDER BY
			CONVERT (
				user_match.player_score,
				SIGNED
			) DESC
	) AS result
WHERE
	result.player_score = 365
LIMIT 1


报错信息:
Database Exception – yii\db\Exception

SQLSTATE[HY000]: General error
The SQL being executed was: SET @ranking = 0;SELECT * FROM (SELECT *, @ranking :=@ranking + 1 AS ranking FROM user_match WHERE user_id != '' ORDER BY CONVERT(user_match.player_score, SIGNED) DESC) AS result WHERE result.player_score=365 LIMIT 1;
Error Info: Array
(
    [0] => HY000
)
↵
Caused by: PDOException

SQLSTATE[HY000]: General error



展开
收起
爱吃鱼的程序员 2020-06-09 10:46:21 525 分享 版权
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    PDO因为安全的原因,不支持一次发送执行两句sql,

    你的SET@ranking=0;已经有个分号了

    2020-06-09 10:46:39
    赞同 展开评论
问答分类:
问答标签:
问答地址: