在select上更改列名

时间:2016-10-26 09:29:11

标签: php mysql join

我有一张临时桌子。

col_1   col_2   col_3   col_4
ABC     B01        10       5
ABC     B01        77       5
ABC     B03        30       7
ABC     B05        50      11
ABC     B05        88      11
DEF     B05        50      50
DEF     B05        88      50
DEF     B06        66      50
A01     B02        20       0 
A01     B04        40       0
A02     B02        99       0

和这个助手表:

ID1     ID2
ABC     A01
DEF     A02

我想做什么。如果临时表中col_1中的值与辅助表中的ID2匹配,则值将更改为辅助表中的ID1。如何在select

上执行此操作

所以,当我选择(SELECT * FROM temporary)时。这是结果:

col_1   col_2   col_3   col_4
ABC     B01        10       5
ABC     B01        77       5
ABC     B03        30       7
ABC     B05        50      11
ABC     B05        88      11
DEF     B05        50      50
DEF     B05        88      50
DEF     B06        66      50
ABC     B02        20       0 
ABC     B04        40       0
DEF     B02        99       0

有可能吗?谢谢你的帮助

NB:

帮助程序表中有很多值。不只是两排。

1 个答案:

答案 0 :(得分:0)

左连接案例

select   case
                when h.id2 = tt.col_1 then h.id1
                else tt.col_1
            end as col_1,
            col_2,col_3,col_4
from    temporary_table tt
left join helper h on tt.col_1 = h.id2