2011-10-25 162 views
1

我有两个表:MySQL的查询需要帮助

t1 
------------------ 
inv_ID 
inv_memID 
inv_projID 

t2 
------------------ 
is_ID 
is_msgID 
is_contID 

我需要得到所有t2.is_contID到一个数组,其中

  • inv_projID = 5
  • t2.is_msgID = T1 .inv_ID和
  • t1.inv_memID = 1

似乎很简单的,但我坚持......尝试这样:

SELECT t2.is_contID 
INNER JOIN t1 ON (t1.inv_ID = t2.is_msgID) 
FROM t2 
WHERE t1.inv_projID = 5 
AND t1.inv_memID = 1 

我缺少什么?

回答

1

FROMJOIN之前。

SELECT t2.is_contID 
FROM t2 
INNER JOIN t1 ON (t1.inv_ID = t2.is_msgID) 
WHERE t1.inv_projID = 5 
AND t1.inv_memID = 1 

SQL对关键字的顺序非常挑剔。
正确的顺序是:

SELECT 
FROM 
JOIN 
WHERE 
HAVING 
GROUP BY 
ORDER 
LIMIT <<-- MySQL only, other DB's user other keywords in other places. 
+0

大新......我想编写代码,并从http://businessofsoftware.org/观看现场直播形式的稀释那些关注... – santa