0

我有两张桌子

表A

add1 |add2 | add3 

1    |2    |3

另一个表 B 包含 add1,add2,add3 的含义

表 B

add1           | add2       | add3       |
Caption1       | Caption2   | Caption3

我想显示

Caption  | Value
Caption1 | 1
Caption2 | 2
Caption3 | 3

或者

Caption1 | Caption2 | Caption3

1        | 2        | 3

如何在 mysql 中做到这一点?如果不可能,请为这种需要提出一个更好的结构。每个月都可能更改标题。

4

1 回答 1

0

我建议以下表结构:

CREATE TABLE B (
  add varchar(10) PRIMARY KEY,
  caption varchar(50)
);
CREATE TABLE A (
  add varchar(10) PRIMARY KEY,
  value int
);

然后使用这个查询:

SELECT caption, value
FROM A INNER JOIN B
ON A.add = B.add

但是如果你想保持你的表结构,你可以这样做:

SELECT B.add1 Caption, A.add1 Value
FROM A, B
UNION ALL
SELECT B.add2, A.add2
FROM A, B
UNION ALL
SELECT B.add3, A.add3
FROM A, B
于 2012-07-27T06:25:24.047 回答