mysql将别名转换为整数数据类型

时间:2014-03-15 10:01:11

标签: php mysql sql database

我在游戏中使用mysql创建了一个排行榜,用于存储用户详细信息和分数。现在我想根据他的详细信息检索用户的排名。如果我按照此网站rank query的建议使用查询,我会收到结果。

但它有一个问题。排名别名是tinyint类型,它只给出排名最多255,之后它只是将排名返回为0.我想键入将其转换为整数,以便该查询能够返回更高值的排名。我使用了CAST,但它给出了错误。

这是返回排名':

的查询
SELECT id, name, score, 
       FIND_IN_SET(score,(SELECT GROUP_CONCAT( score ORDER BY score DESC ) 
                          FROM scores ) ) AS rank 
FROM scores 
WHERE name = 'Assem' 

请帮忙解决这个问题。 感谢

我尝试将其转换为

SELECT name, FIND_IN_SET( score, (    
        SELECT GROUP_CONCAT( score
        ORDER BY score DESC ) 
        FROM hiscores )
        ) AS CAST(rank as UNSIGNED)
        FROM hiscores
        WHERE phone = '$phone'
        ;

SELECT name, CAST (FIND_IN_SET( score, (    
        SELECT GROUP_CONCAT( score
        ORDER BY score DESC ) 
        FROM hiscores )
        ) as UNSIGNED) AS rank
        FROM hiscores
        WHERE phone = '$phone'
        ;

但两者都有错误

0 个答案:

没有答案