簡體   English   中英

我該如何使用subselect或LEFT join進行Delete查詢

[英]How can i do this DELETE Query with subselect or LEFT join

我試圖從任務表中刪除任務,其中任務ID例如為100,而刪除用戶或其團隊成員在用戶表中分配了較小user_role的任務創建的任務WHERE

我想知道這樣的事情是否會發揮作用,或者實現此目的的正確方法是什么?

DELETE FROM tasks t LEFT JOIN users u ON u.user_id = 1 WHERE task_id = 677 
AND createdby 
IN((SELECT u1.user_id FROM users u1 WHERE u1.user_team = u.user_team 
AND taskrspnsble 
IN((SELECT u2.user_id FROM users u2 WHERE u2.user_role <= u.user_role))
))

我認為我的邏輯解釋得很清楚? 我只是想通了。 這里是正確答案!

 DELETE FROM tasks 

WHERE task_id = 1 
AND createdby IN(
                (SELECT u1.user_id FROM users u1 WHERE u1.user_team 
                 IN
                 (SELECT u2.user_team FROM users u2 WHERE u2.user_role <= (SELECT u3.user_id FROM users u3 WHERE u3.user_id = 1)
                )
                ))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM