選擇所有的任務一定電子郵件ID,你需要加入user_tasks
和tasks
select
ut._id,
ut.email,
ut.task_id,
t.name
from user_task ut
join tasks t on t._id = ut.task_id
where ut.email = 'some email id'
選擇與您需要加入所有表的東西作爲
用戶的子任務
select
ut._id ,
ut.email,
ut.task_id,
t.name as task_name,
st._id as sub_task_id,
st.name as sub_task_name
from subtask st
join tasks t on t._id = st.task_id
join user_task ut on ut.task_id = t._id
where ut.email = 'some email id'
UPDATE問題被更新後,我看到有user
表,你是存儲EMAILID到user_task
,我建議將用戶標識存儲在表user_task
中,這樣如果用戶更改電子郵件標識,它不會爲相關表創建任何問題,並且您只需使用標識將user
表加入user_tasks
表。
所以,如果你已經存儲了user_id
在user_task
表而不是email
查詢會看起來像
select
u.id as user_id,
u.email,
ut.task_id,
t.name
from user_task ut
join user u on u._id = ut.user_id
join tasks t on t._id = ut.task_id
where u.email = 'some email id'
和
select
u._id as user_id,
u.email,
ut.task_id,
t.name as task_name,
st._id as sub_task_id,
st.name as sub_task_name
from subtask st
join tasks t on t._id = st.task_id
join user_task ut on ut.task_id = t._id
join user u on u._id = ut.user_id
where u.email = 'some email id'
非常感謝你! –