如何在mysql中获取不同行但在同一列中的值?

时间:2013-12-26 19:54:49

标签: mysql subquery rows

我有一个像这样的mysql表

product |   dist1   |   dist2  |   dist3
--------|-----------|----------|--------
table   |    250    |    320   |    450
desk    |    254    |    145   |    145
chair   |    854    |    544   |    845
bed     |    145    |    265   |    188

现在我想只在dist1中获得所有产品和价值。我需要这样的结果。还有如何插入dist5?

product |   dist1   |
--------|-----------|
table   |    250    |
desk    |    254    |
chair   |    854    |
bed     |    145    |

2 个答案:

答案 0 :(得分:1)

与第二列使用相同别名的联盟。

select column1, column2 as column from table

Union

Select column1, column3 as column from table

如果您想要单列修改上面的

Select column1 as column from table
Union
Select column2 as column from table

根据您的修改

Select column1, column2 from table 

会从表格中给出两列。要先添加新列,您需要

Alter table table1
Add column column1 datatype

然后将数据插入此新列。如果你想要一些默认数据,比如0表示整数

Alter table table1
Add column column1 int default 0

完成这些教程http://www.w3schools.com/php/php_mysql_connect.asp

答案 1 :(得分:0)

从名为yourProductTable的表中只读取product和dist1:

SELECT product, dist1 FROM yourProductTable

插入dist5(你想插入一个名为dist5的列吗?:

ALTER TABLE yourProductTable ADD dist5 INT(20)