我正在寻找MYSQL
查询的帮助。我有两个表,一个包含tickets
列表,另一个是members
列表。
表门票: TICKET_ID, 会员ID 表成员: member_id
可以但不必将成员分配给故障单。我想要做的是选择所有票据,然后如果在票证表中设置了member_id字段,也可以获取成员信息。
一种方法是执行SELECT * FROM Tickets
然后在PHP中循环并检查是否设置了member_id字段。如果设置,则在members
表上执行另一个查询以获取相应的信息。唯一的问题是它会有大量的查询。
有没有办法在一个连接查询中获取所有结果?
由于
答案 0 :(得分:2)
Select *
from Tickets
Left Join Members On tickets.member_id = members.member_id
答案 1 :(得分:0)
select * from tickets left outer join members on tickets.member_id = members.ticket_id
答案 2 :(得分:0)
SELECT t.ticket_id, t.member_id FROM tikcets t LEFT JOIN members m ON t.member_id = m.member_id
这将为您提供是否已分配给会员的所有门票。 您应该在查询中添加要获取的其他字段。
答案 3 :(得分:0)
试试这个:
SELECT t.ticket_id, m.member_id
FROM tickets AS t LEFT OUTER JOIN members AS m
ON t.member_id = m.member_id
LEFT OUTER JOIN
将导致返回故障单的所有结果,以及来自成员的任何匹配,而不会取消故障单记录,因此这可以解决问题。