私は自分のテーブルから費やした時間のランクを時間で取得しようとしています。できます。しかし、今はそれを 1 つのユーザー グループに制限したいと考えています。だから私はこれを作った:
SELECT
s.shortname AS servername, s.displaycolor AS displaycolor,
MIN(
if(`yearweek`=yearweek(CURRENT_DATE(),3) AND (s.admin_group=u.usergroupid OR find_in_set(s.admin_group, u.membergroupids)>0),
(SELECT COUNT(*)
FROM godziny_tygodnie AS x
LEFT JOIN vbulletin.vb_user AS xu ON xu.userid=x.dbid
WHERE gw.sid=x.sid
AND x.`yearweek`=gw.`yearweek` AND x.`time` > gw.`time`)+1
AND ( xu.usergroupid=s.admin_group OR find_in_set(s.admin_group, xu.membergroupids)>0)
, NULL)
) AS rweek0,
-- there are more columns simillar to previous, but with different time interval
FROM godziny_tygodnie gw
INNER JOIN godziny_miesiace gm ON gw.dbid=gm.dbid AND gw.sid=gm.sid
INNER JOIN godziny_lacznie gt ON gw.dbid=gt.dbid AND gw.sid=gt.sid
LEFT JOIN serwery AS s ON s.id=gw.sid
LEFT JOIN vbulletin.vb_user u ON u.userid=gw.dbid
WHERE gw.dbid=:uid
GROUP BY gw.dbid, gw.sid
そして、それは私にエラーを与えますColumn not found: 1054 Unknown column 'xu.usergroupid' in 'field list'
実行できないのはなぜですか?vbulletin.vb_user.usergroupid
存在します...