2013-05-10 42 views
0

我有一个包含专业化ID是对包含specialization_idspecialization_name专业化表外键选择查询,并加入使用PHP MySQL的

我想查询specialization_name表在用户表中具有与专业化表中相同的ID。

任何人都可以帮助我吗?

这是我开始,但我认为这是错误的

$spec=""; 
$sql = mysql_query(" 
      SELECT 
       specialization_name 
      FROM 
       user, specialization 
      WHERE 
       u.specialization=s.specialization_id 
      AND user_id='$id' 
     ") or die("the query from table specialization did not work"); 
+1

注意sql注入.. – 2013-05-10 14:07:17

+0

请注意,mysql_ *已被弃用。最好开始使用mysqli_ * – nvanesch 2013-05-10 14:10:00

+0

什么是'$ spec'? – Strawberry 2013-05-10 14:13:32

回答

0

试试这个:

SELECT 
    specialization_name 
FROM 
    user u 
INNER JOIN specialization s 
    ON u.specialization=s.specialization_id 
WHERE 
    user_id='$id' 

正如贡萨洛也指出要确保你逃避你输入(在这种情况下$id

此外,如果您为user表指定别名u并且为指定表

+0

谢谢先生,只要我可以upvote我会 – user2360853 2013-05-10 14:16:32

+0

不用担心队友:)很高兴我可以帮助 – Stephan 2013-05-10 14:19:02