sqlite3 联表查询 代码
select USER.USERID,USER.USERNAME,_MESSAGE.MAXTIMETAG,_MESSAGE.DIRECTION,MESSAGECOUNT.COUNT,USER.SEX from USER,USEREX left join (select USERID,max(TIMETAG) as MAXTIMETAG,CONTENT,SENDTYPE from MESSAGE where MYID = ? and GROUPID = 0 group by USERID) _MESSAGE on USEREX.USERID = _MESSAGE.USERID left join MESSAGECOUNT on MESSAGECOUNT.ID = USEREX.USERID and MESSAGECOUNT.TYPE = 0 and MESSAGECOUNT.MYID = ? where USEREX.LASTTIME > 0 and USEREX.MYID = ? and USER.USERID = USEREX.USERID; (select xxx from xxx left join (select xxx as xxx from xxx where xxx group by xxx) on xxx left join xxx on xxx where xxx) select GROUPS.GROUPID,GROUPS.GROUPNAME,GROUPS.GROUPNAMEP,GROUPS.PICTUREURL,GROUPEX.LASTTIME,MESSAGECOUNT.COUNT from GROUPS,GROUPEX left join (select MESSAGE.GROUPID,_MSGTMP.MAXTIMETAG,MESSAGE.USERID,MESSAGE.SENDTYPE from MESSAGE,(select max(TIMETAG) as MAXTIMETAG,GROUPID from MESSAGE where MYID = ? and USERID >= 0 and GROUPID > 0 group by GROUPID) _MSGTMP where MESSAGE.GROUPID = _MSGTMP.GROUPID and MESSAGE.TIMETAG = _MSGTMP.MAXTIMETAG and MESSAGE.MYID = ?) _MESSAGE on GROUPEX.GROUPID = _MESSAGE.GROUPID left join USER on USER.USERID = _MESSAGE.USERID left join MESSAGECOUNT on MESSAGECOUNT.MYID = ? and MESSAGECOUNT.ID = GROUPEX.GROUPID and MESSAGECOUNT.TYPE = 1 where GROUPEX.MYID = ? and GROUPEX.GROUPID > 0 and GROUPEX.LASTTIME > 0 and GROUPS.GROUPID = GROUPEX.GROUPID; (select xxx from xxx left join (select xxx from (select xxx from xxx where xxx group by xx) where xxx )on xxx left join xxx on xxx let join xxx on xxx where xxx) 备注:“” ,代表行末换行的意思 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |