【发布时间】:2016-04-02 12:36:42
【问题描述】:
我有一个包含布尔值(仅 0 和 1)的表,需要对客户端进行 CSV 编辑。我知道我可以像这样进行 1 次替换:
SELECT REPLACE(email, '%40', '@'),
REPLACE(name,'%20', ' '),
REPLACE(icon_clicked, 1, 'Yes')
FROM myTable
WHERE id > 1000;
这会将 1 的所有值转换为“是”,但如何在单个查询中执行此操作,同时 1 => 是和 0 => 否,所以布尔结果存储在单个列中?我试着这样做:
SELECT REPLACE(email, '%40', '@'),
REPLACE(name,'%20', ' '),
REPLACE(icon_clicked, 1, 'Yes'),
REPLACE(icon_clicked, 0, 'No')
FROM myTable
WHERE id > 1000;
但此查询为“否”字符串替换创建了一个附加列(因此最终结果有 4 列,电子邮件、名称、icon_clicked->yes、icon_clicked->no)
【问题讨论】: