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;