在我的MySQL DB中,我有两个表:pos_tables和pos_user_login。在
pos_tables,我有四个员工字段:staff1,staff2,staff3,
staff4。这4个字段包含存储在其中的职员ID
pos_user_login。在pos_tables中,这些员工ID可能会重复,但staff_id
是pos_user_login中的主键。
我试图做的是加入这两个表,使用条件
if pos_user_login.staff_id=(pos_tables.staff1 OR
pos_tables.staff2 OR
pos_tables.staff3 OR
pos_tables.staff4)...以及来自pos_tables的4个字段中的任何字段与来自的主键匹配
pos_user_login,然后从pos_tables中获取该记录。
我需要运行什么查询来执行此操作?
----编辑----
我应该使用这样的东西吗?
SELECT *
FROM pos_user_login pu
WHERE pos_user_login_id IN (SELECT *
FROM pos_tables
WHERE staff1 = pu.pos_user_login_id
OR staff2 = pu.pos_user_login_id
...);----编辑2 ----
样本记录
pos_tables
----------
table_number (1 )
staff1 (10)
staff2 (11)
staff3 (12)
pos_user_login
--------------
staff_id (10),
type (drinks_person)
staff_id(11), type (order_taker)
staff_id(12), type(cleaner)比较使用WHERE条件(type="drinks_person")后,输出
应该:
table_number(1), staff1(10), staff2("null"), staff3(null)