我有点困惑,我在寻求一些大师的帮助
我有这张桌子(名为" mytable")
ID | Colum_a | Column_b
121 100 NULL
122 150 200
123 100 100
124 50 NULL
125 NULL 5
要选择ID,我使用像这样的简单查询
SELECT id FROM mytable WHERE Colum_a > 0 OR Column_b > 0
显然,我有这个结果:
ID
121
122
123
124
125
现在,我的"头部划伤" (而这里我很困惑......)。 我需要"分开"两列(Column_a和Column_b)允许"复制" id。
为了更清楚,我需要一个这样的结果(在未来的foreach循环中使用,php):
ID | Result
121 100
122 150
122 200
123 100
123 100
124 50
125 5
我尝试过这个查询,但它不起作用......
SELECT ID FROM mytable WHERE Column_a > 0 OR Column_b > 0 IN
(SELECT ID FROM mytable GROUP BY ID HAVING COUNT(*) > 1)
任何帮助都会非常感激。感谢。
答案 0 :(得分:4)
也许使用union all
select ID, Colum_a as res from mytable WHERE Column_a > 0
union all
select ID, Colum_b as res from mytable WHERE Column_b > 0
order by ID asc;