我要么变老,要么我需要写的查询变得越来越复杂。以下查询将获得tasks与该用户的所有关联。) ^& v, s. C# O, i
"SELECT `date` FROM `tasks` WHERE `user_id`= 1;"该tasks表为(id,date,user_id,url_id);) n; O1 } e, M; a& A3 f7 Z
现在,我还需要url_id通过" ^9 g* N5 f0 N# a* F
`urls` table (`id`,`user_id`)独立查询如下: * s$ D" S1 g' E! h9 C! C"SELECT `t1`.`data` FROM `tasks` `t1` JOIN `urls` `u1` ON `u1`.`id` = `t1`.`url_id` WHERE `u1`.user_id` = 1;"但是,这两个查询可以合并为一个查询吗?我的逻辑认为应该是这样,尽管我不知道如何实践它JOIN。 " B: `! g! D! e6 Z! q) O " S8 V& {0 ~; z" I. I 解决方案: 2 @ t. c9 ^2 f1 a 我可以用UNION。 % X9 t( M. z9 }* g aSELECT `date` FROM `tasks` WHERE `user_id`=1UNIONSELECT `t1`.`date` FROM `tasks` `t1` INNER JOIN `urls` `u1` ON `u1`.`id` = `t1`.`url_id` WHERE `u1`.user_id`=1.