使用JOINS,ORDER BY和数据透视表

时间:2016-04-21 17:59:03

标签: mysql sql database join

table: users
    id

table: tasks
    id

table: tasks_users
    user_id
    task_id
    is_owner

我有一个users表,一个tasks表和一个数据透视表tasks_users

我想选择task_id并按tasks_users.is_owner排序的所有用户。

我将如何做到这一点?

3 个答案:

答案 0 :(得分:2)

尝试这样的事情......

 select u.users
    from users u 
         join tasks_users tu
         on u.id=tu.user_id 
         join tasks t
         on t.id=tu.task_id
    where t.task_id=your_id
  order by tu.is_owner

答案 1 :(得分:0)

我认为这很简单

select u.id 
from users u
inner join tasks_users tu on u.id = tu.user_id 
inner join tasks t on t.id = tu.task_id
order by tu.is_owner;

答案 2 :(得分:-2)

以下将执行表"任务"的连接。和" task_users",并仅返回具有所需ID的任务的用户:

SELECT users.id 
FROM tasks, task_users 
WHERE task_users.task_id = (desired id) 
ORDER BY tasks_users.is_owner