Select语句上的Postgresql连接

Select语句上的Postgresql连接,sql,postgresql,join,Sql,Postgresql,Join,我想在Postgresql中对Select语句进行联接,但遇到了一些问题 SELECT s.sessionid, sp.lang FROM sessions s INNER JOIN pages sp ON sp.sessionid = s.sessionid INNER JOIN ( SELECT max(sessionid) FROM sessions AS maxS

我想在Postgresql中对Select语句进行联接,但遇到了一些问题

SELECT 
    s.sessionid, sp.lang 
FROM 
    sessions s
INNER JOIN 
    pages sp 
ON 
    sp.sessionid =  s.sessionid 
INNER JOIN
(
    SELECT 
        max(sessionid)
    FROM 
        sessions
    AS 
        maxSession
)
ON 
    maxSession = s.sessionid
WHERE 
    --Where condition
我得到以下错误: 错误:“发件人”中的子查询必须具有别名

LINE 6: (
        ^
HINT:  For example, FROM (SELECT ...) [AS] foo.
如果我从中添加

我又犯了一个错误

ERROR:  syntax error at or near "FROM"
LINE 7:  FROM
想法?

你很接近了

  INNER JOIN
 (
  SELECT 
    max(sessionid) as 'maxSession'
   FROM 
   sessions        
) maxSession
ON 
maxSession.maxSession = s.sessionid

任何时候将查询引用为表时,都需要给它一个别名…别名位于整个子查询之后,而不是子查询本身。

删除子查询上的别名。应该在外面。选择maxsessionid maxSession FROM sessions AS maxSession ON maxSession.maxSession=s.SessionDone更多信息缺失,您需要为maxsessionid提供别名是的,我这方面很马虎。修正了…刚刚注意到在我的答案发布之前,你在评论中出现了错误。
  INNER JOIN
 (
  SELECT 
    max(sessionid) as 'maxSession'
   FROM 
   sessions        
) maxSession
ON 
maxSession.maxSession = s.sessionid