0

我有两张表,一张给管理员,一张给用户。我想要一个包含管理员和用户的 html 选择框。我只想要活动用户/管理员,该用户/管理员在 foo 表中也有一个条目。到目前为止,这是我的 MySQL 查询:

SELECT * FROM users u, admins a, foo f WHERE u.active ='1' AND (a.admin_id = f.admin_id OR u.user_id = f.user_id)

不幸的是,这得出了一个无意义的结果。提前致谢!

4

1 回答 1

0

我猜你的桌子是这样设置的。

foo (user_id, admin_id, ...)
users (user_id, active, ...)
admin (admin_id, active, ...)

如果是这种情况,那么除了重新考虑您的数据库设计(为所有用户分配一个表,每个用户都被分配一个 user_level)之外,您还可以尝试UNION

SELECT users.user_id AS id
FROM foo INNER JOIN users ON foo.user_id = users.user_id
WHERE users.active = '1'
UNION
SELECT admins.admin_id
FROM foo INNER JOIN admins ON foo.user_id = admins.admin_id
WHERE admins.active = '1'
于 2013-01-14T12:45:44.957 回答