[英]Mysql union remove zero
I would like to merge two tables,but it removes zero when i used union all in stroeprocedure in mysql. 我想合并两个表,但是当我在mysql的stroeprocedure中使用union all时,它将删除零。
Two tables as the following: 两张表如下:
TBL1:
ID VAL1 VAL2
2 3 3
3 3 0
TBL2
ID VAL1 VAL2
3 0 3
4 0 4
Select ID,VAL1,VAL2 FROM TBL1
UNION ALL
Select ID,VAL2,VAL2 FROM TBL2;
ERROR RESULT:
ID VAL1 VAL2
2 3 3
3 3
3 3
4 4
RIGHT RESULT:
ID VAL1 VAL2
2 3 3
3 3 0
3 0 3
4 0 4
How to keep Zero value when we use union all ? 使用union all时如何保持零值?
Regards, 问候,
try this 尝试这个
Select ID,IF(VAL1 =0, 0,val1) val1,VAL2 FROM TBL1
UNION ALL
Select ID,IF(VAL1 =0, 0,val1) val1,VAL2 FROM TBL2;
if same thing is with you VAL2 then use also IF(VAL2 =0, 0,val2) val2
for val2 如果您与VAL2有相同的事物,则还将
IF(VAL2 =0, 0,val2) val2
用于val2
your query looks right look demo http://sqlfiddle.com/#!2/9e0845/2 您的查询看起来正确外观演示http://sqlfiddle.com/#!2/9e0845/2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.