SQL INNER JOIN异常

时间:2015-01-19 12:28:01

标签: sql exception syntax-error derby

我是SQL查询的新手,我正在尝试加入两个表

我需要获取userID = 2

的关注者的所有数据

这是我得到的错误:Syntax error: Encountered "INNER" at line 1, column 39.

这是我运行的SQL查询:

SELECT * FROM FOLLOWER 
WHERE userID = "2" 
INNER JOIN USERS ON FOLLOWER.Follower_userID = USERS.userID 
ORDER BY USERS.follower_count ASC

我的数据库中的表格是:

从动


  • ID
  • userID
  • Follower_userID

USERS


  • 用户ID
  • 用户名
  • 密码
  • 昵称

P.S 我正在使用Apache Derby。

非常感谢你们。

5 个答案:

答案 0 :(得分:2)

where子句的位置不正确

SELECT查询的结构是

SELECT fields
FROM tables
WHERE conditions
ORDER BY fields

所以你应该查询

SELECT * 
FROM FOLLOWER INNER JOIN USERS ON FOLLOWER.Follower_userID = USERS.userID
WHERE userID="2" 
ORDER BY USERS.follower_count ASC

答案 1 :(得分:0)

试试这句话:

SELECT * FROM FOLLOWER Fl
WHERE userID="2" 
INNER JOIN USERS Us ON Us.userID = Fl.Follower_userID
ORDER BY USERS.follower_count ASC

让我知道它是否有效

答案 2 :(得分:0)

首先使用join然后在哪里。

SELECT * FROM FOLLOWER INNER JOIN USERS ON FOLLOWER.Follower_userID = USERS.userID WHERE userID=2  ORDER BY USERS.follower_count ASC

答案 3 :(得分:0)

试试这个 SELECT * FROM FOLLOWER INNER JOIN USERS ON FOLLOWER.Follower_userID = USERS.userID WHERE FOLLOWER.userID="2" ORDER BY USERS.follower_count ASC

希望这有帮助

答案 4 :(得分:0)

首先将连接的位置规则全部加入,然后给出过滤更多数据的条件..

所以你的内部条件刚好在内部联接之后就像上面提到的那样。

select * 
from yourtable
join yourothertable
where condition if you want

http://bytes.com/topic/sql-server/answers/850159-performance-conditions-where-clause-vs-conditions-inner-join