表A
| SLNO | TYPENAME | TYPEMODE |
------------------------------
| 1 | Act.Alw | A |
| 2 | Canteen | D |
我想根据其typmode显示两列
使用UNION ALL我得到
| Addition | Deduction |
------------------------
| Act.Alw | |
| | Canteen |
我希望这样显示。添加和扣除是别名
| ADDITION | DEDUCTION |
------------------------
| Act.Alw | Canteen |
答案 0 :(得分:0)
看起来您需要使用联接而不是联合。但是如果你能解释一下你想要完成什么,并且可能发布你正在尝试运行的SQL查询,那将会很有帮助。
答案 1 :(得分:0)
您可以使用CASE
语句。要对它们进行分组,您需要使用GROUP_CONCAT
函数,如下所示:
SELECT GROUP_CONCAT(CASE WHEN typemode = 'A'
THEN typename ELSE NULL END) AS Addition
,GROUP_CONCAT(CASE WHEN typemode = 'D'
THEN typename ELSE NULL END) AS Deduction
FROM Table1
输出:
| ADDITION | DEDUCTION |
------------------------
| Act.Alw | Canteen |