如何在案例条件mysql上定义别名

时间:2016-12-12 02:39:03

标签: mysql sql sql-insert

我试图通过更改值将我的一列移动到另一列,但由于列名不匹配(一个是role_id,另一个是challenge_id)我尝试创建一个别名 as role_id 它不起作用。 是我目前的查询。

我尝试做

INSERT into role_user (role_id, user_id) 
            SELECT CASE 
                WHEN challenge_id=2 Then 6
                When challenge_id=3 then 7
                when challenge_id=4 then 8 
                when challenge_id=1 then 9
                END
                challenge_id as role_id , user_id
                FROM challenge_user

1 个答案:

答案 0 :(得分:3)

“END”和“AS”之间有一个冗余的“质询ID”:

<figure>
<div class="icons">
</div>
</figure>

此外,由于你并没有真正使用这个别名(只是直接将它插入另一个表),你可以完全删除它:

INSERT into role_user (role_id, user_id) 
            SELECT CASE 
                WHEN challenge_id=2 Then 6
                When challenge_id=3 then 7
                when challenge_id=4 then 8 
                when challenge_id=1 then 9
                END
                AS role_id,  -- Here!
                user_id
                FROM challenge_user