sql查询连接2个表并显示1列中的所有记录

时间:2010-02-18 17:55:00

标签: sql join

我在sql server中有两个表 - 一个有51个美国州,另一个有名字,州。 名称状态的表具有不同的记录,即 -

Seere -- AK
Seere -- LA
Seere -- CA
John  -- HI
John  -- MA

我想要一个查询,拿起一个叫“Seere”的名字,并显示状态表中的所有状态,以及附加到第二个表的那些状态的名称,所以

null -- AR
Seere -- AK
Seere -- LA
Seere -- CA
null -- MA
null -- CO

对于所有名字都一样,我只选择一个名字,所有州都显示。任何想法?

2 个答案:

答案 0 :(得分:1)

SELECT  *
FROM    states s
LEFT JOIN
        names n
ON      n.name = 'Seere'
        AND n.state = s.state

答案 1 :(得分:0)

使用外部联接:

select name_state.name, state_table.state
  from state_table
    left outer join name_state
      on (state_table.state = name_state.state)
  where name_state.name = "Seere"
相关问题