如何用第二列值替换星号

时间:2018-08-21 03:53:27

标签: mysql

1)我们可以在SQL中的select语句中使用if条件吗? 2)在存储过程中,我需要满足以下条件 a)我有来自不同表的两列需要合并,并且如果第1列中存在特殊字符,则应将星号替换为第二列值 b)如果没有星号,则可以正常合并列

Column 1
---------
UAT 
ST*
UAT*S
UT

Column 2
---------
12
10
9
6

我想要结果

UAT12
ST10
UAT9s
UT6

1 个答案:

答案 0 :(得分:0)

这将起作用:

1)使用IF

SELECT 
IF(column1 LIKE '%*%', REPLACE(column1, '*', column2), CONCAT(column1, column2))
FROM tableName

2)使用CASE

SELECT 
CASE WHEN column1 LIKE '%*%' 
    THEN REPLACE(column1, '*', column2)
    ELSE CONCAT(column1, column2)
END 
FROM tableName