mysql 同表查询不同列

来源:百度知道 编辑:UC知道 时间:2024/04/30 12:59:14
+----+------+------+------+------+------+------+
| id | city | year | jg_1 | jg_2 | jg_3 | jg_4 |
+----+------+------+------+------+------+------+
| 1 | 22 | 2007 | 34 | 43 | 34 | 54 |
| 2 | 22 | 2008 | 4554 | 456 | 5465 | 676 |
+----+------+------+------+------+------+------+
表结构如上,我如何通过一个语句查出id为1的jg_1,jg_2和id为2的jg_3,jg_4.我用的是mysql数据库!
请教高手了!
如果2次查询的列数是一样的没问题,如果我要查id为1的jg_1,jg_2,jg_3和id为2的jg_1怎么实现呢!

我已经搞定了,我怎么就没想到把一张表命2次别名呢,呵呵!
只是你们都对,我的分实在不好分的!
过2天给你们结贴!
还是谢谢了!

你好

select a.jg_1, a.jg_2, b.jg_3, b.jg_4 from table_name a, table_name b where a.id=1 and b.id=2

那么就select a.jp_1, a.jp_2, a.jp_3, b.jp_1 from table_name a, table_name b where a.id=1 and b.id=2

希望可以帮到你

select jp_1,jp_2 from yourtable where id=1 union
select jp_3,jp_4 from yourtable where id=2

如果你想结果多行而且列数一样,只能用union.
如果你的结果是一行,列数可以不一样,如
回答者:皇朝de伯爵 - 江湖少侠 七级 所说即可。

搂住为啥要钓大家胃口呢,呵呵。。

SELECT [ID], [jp_1], [jp_2] FROM yourtable where id=1 and id=2

select jg_1,jg_2,jg_3 from 表名 where id=1
union all
select jg_1,0,0 from 表名 where id=2

第二个sql语句中2个0是字符常量,楼主可以随便填,是为了保持和第一句sql语句中有相同的列数

不是吧,这么快就完了,我来迟了