SQL在同一个表中的多个列上联接

我有2个子查询,但是我无法从同一个表中将列连接在一起。 我试过了:

SELECT * FROM (SELECT userid, listid FROM user_views_table WHERE date='2013-05-15' AND view_type='lists') a JOIN (SELECT sourceid, destinationid FROM actions_table WHERE date='2013-05-15' AND payloadtype='lists_user' AND actiontype='delete') b ON a.userid = b.sourceid ON a.listid = b.destinationid; 

如果我只是简单地结束查询与ON a.userid = b.sourceid它的作品,但我怎么也可以join这些表上的另一列还ON a.listid = b.destinationid

任何帮助赞赏。

像这样join:

 ON a.userid = b.sourceid AND a.listid = b.destinationid; 

你想join条件1和条件2,所以简单地使用AND关键字如下

 ON a.userid = b.sourceid AND a.listid = b.destinationid;