如何连接两个名称不同的mysql表? (麻烦使用UNION)

时间:2012-10-19 10:43:16

标签: mysql sql

我在使用UNION时遇到了一些麻烦。 (至少我怀疑UNION是工具)

我有以下内容:

表1:us_states.us_state

表2:fex_tax_by_prov.TAX_PROVINCE

我想使用一个mysql查询将所有州和省作为一个结果返回('region')。我有类似的东西,但不正确。

SELECT *
FROM (
    SELECT TAX_PROVINCE as region,
    FROM fed_tax_by_prov 
    UNION
    SELECT us_state as region,
    FROM us_states
)

非常感谢任何帮助。感谢

4 个答案:

答案 0 :(得分:1)

select us_state as region from us_states
union
select tax_province from fed_tax_by_prov
只要两列属于同一类型,并且添加别名(只需要在union中进行第一次选择),

就可以工作,这意味着你可以在包裹中引用它{{1很像你的例子。

答案 1 :(得分:0)

尝试此查询,

SELECT TAX_PROVINCE as region FROM fed_tax_by_prov 

UNION

SELECT us_state as region FROM us_states

MySQL UNION允许您将多个表中的两个或多个结果集组合在一起。使用MySQL UNION的语法如下:

SELECT statement

UNION [DISTINCT | ALL]

SELECT statement

UNION [DISTINCT | ALL]

…

答案 2 :(得分:0)

试     (从fed_tax_by_prov中选择TAX_PROVINCE)     联盟     (选择us_state FROM us_states);

答案 3 :(得分:0)

我明白了,问题是我在查询开头有一个额外的SELECT *。 非常感谢你的帮助。