私はこのクエリを持っています:
user = self.db.query("SELECT DISTINCT u.id, u.name, n.network_id, n.perm \
FROM users as u LEFT OUTER JOIN nets_permissions as n \
ON u.id = n.user_id WHERE u.id!=%s", int(usr_id))
列「perm」(許可) は int 値で、1、2、3、ecc のような値になります。またはヌル値。次のようなクエリが必要です。
user = self.db.query("SELECT DISTINCT u.id, u.name, n.network_id, n.perm \
FROM users as u LEFT OUTER JOIN nets_permissions as n \
ON u.id = n.user_id WHERE u.id!=%s" AND n.perm!=3, int(usr_id))
したがって、perm=3 のレコードをクエリから削除したいと考えています。
この方法で perm=3 を使用してユーザーの ID を取得できると思いました。
self.lock_tables("read", ['nets_permissions'])
admin = self.db.query("SELECT user_id FROM nets_permissions \
WHERE network_id=%s AND perm=3", nid)
self.unlock_tables()
そして、私は書くことができました
self.lock_tables("read", ['users as u', 'nets_permissions as n'])
user = self.db.query("SELECT DISTINCT u.id, u.name, n.network_id, n.perm \
FROM users as u LEFT OUTER JOIN nets_permissions as n \
ON u.id = n.user_id WHERE u.id!=%s AND u.id!=%s", int(usr_id), int(admin))
self.unlock_tables()
しかし、これはうまくいきません....
何か案が?
ありがとうございました