我有两个表,它们如下:
USERS
ORDERS我希望选择订单表中至少有1个或更多订单的所有用户。我知道在MySQL中有一个内联查询,但是现在我必须选择所有用户,然后进行另一个查询,看看每个用户是否都有订单-所有这些都是使用PHP循环完成的。
我现在所做的操作在道德上是不正确的,所以我基本上只想在一个MySQL查询中选择ORDERS表中引用的所有用户。
发布于 2013-01-25 12:52:40
这是您应该使用的查询
select distinct u.* from users u
inner join orders o on o.user_id = u.id;请注意distinct和u.*。该查询不会从orders中选择字段,也不会两次选择同一个用户(如果一个用户有多个订单)。
发布于 2013-01-25 12:38:34
您可以使用mysql join 语法。假设您的两个表都有userid列,下面是示例:
SELECT * FROM USERS a JOIN ORDERS b ON
a.UserId = b.UserId这是一个简单的数据库操作,有关join的说明,请参阅此处
https://stackoverflow.com/questions/14515422
复制相似问题