SELECT sum(access) as access
FROM acl
WHERE (userID='$userID' OR groupID in (SELECT groupID FROM membership WHERE userID='$userID'))
AND objID = (SELECT objID FROM objects WHERE name='$object')
Felmeddelandet:
Databas fel #1064: Invalid SQL
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT groupID FROM membership WHERE userID='49')) AND ob
Så vitt jag vet går det inte att skriva om utan subselect så att man alltid får exakt samma resultat.
SELECT sum(distinct access) as access
FROM acl join objects o
on acl.objid = o.objid
left join membership m
on acl.groupid = m.groupid
and m.userID='$userID'
WHERE o.name='$object'
and acl.userid = '$userid'
är det närmaste man kan komma. Det blir olika resultat med de två olika frågorna om det finns flera grupper (med access) som har samma värde i access och som usern är medlem i.
132 ms totalt · 3 externa anrop · v20260731065814-full.55e59744