2012-07-30 93 views
0
A. event_choices 

event_id | res_id | 
4  | 10  | 

B. restaurants 

res_id  | res_name | 
10   | xyz  | 

C. event 
event_id | event_name | 
4   | birthday | 

我一直在试图内连接尝试匹配名字ID,但没有成功如何将id与来自mysql中不同表的名称进行匹配?

select event_id as id from event_choices inner join restaurants on res_id.id = res_name 

任何帮助,将不胜感激,很新的PHP/MySQL的

+0

你试图得到什么数据? – 2012-07-30 17:48:52

回答

2
SELECT event.event_name, restaurants.res_name FROM event_choices 
    INNER JOIN restaurants ON event_choices.res_id = restaurants.res_id 
    INNER JOIN event ON event_choices.event_id = event.event_id 

可以工作。

如果您选择*而不是event.event_name您应该获得所有数据并能够从中选择。您还可以选择<table>.<field>形式的特定字段。

编辑:加入res_name

+0

可以很好地获得结果中的event_name和res_name – Grundizer 2012-07-30 17:59:24

5

尝试:

SELECT event_id, res_name FROM event_choices, restaurants WHERE event_choices.res_id = restaurants.res_id 

享受^ _^

+0

这很好,我怎么修改这个以匹配event_id到e​​vent_name? – Grundizer 2012-07-30 17:51:26

+0

@Grundizer:只要加入'事件'在那里。 'WHERE event.event_id = event_choices.event_id'。 – 2012-07-30 17:52:07

0

试试这个:

select ec.event_id as id from event_choices ec inner join restaurants r on ec.res_id = r.res_id 
相关问题