合并两个SELECT查询

Gaj*_*jus 5 mysql sql

我要么变老了,要么我需要写的查询变得越来越复杂.以下查询将获得tasks与用户关联的所有内容.

"SELECT `date` 
   FROM `tasks` 
  WHERE `user_id`= 1;"
Run Code Online (Sandbox Code Playgroud)

tasks表为(id,date,user_id,url_id);

现在,我需要获得url_id与用户关联的记录

`urls` table (`id`, `user_id`)
Run Code Online (Sandbox Code Playgroud)

独立查询看起来像这样:

"SELECT `t1`.`data` 
   FROM `tasks` `t1` 
   JOIN `urls` `u1` ON `u1`.`id` = `t1`.`url_id` 
  WHERE `u1`.user_id` = 1;"
Run Code Online (Sandbox Code Playgroud)

但是,是否可以将这两个查询合并为一个查询?我的逻辑说它应该是,虽然我不知道如何做实际的JOIN.

tva*_*son 6

我可能会使用UNION.

SELECT `date`
   FROM `tasks` WHERE `user_id`=1
UNION
SELECT `t1`.`date`
   FROM `tasks` `t1`
   INNER JOIN `urls` `u1` ON `u1`.`id` = `t1`.`url_id`
   WHERE `u1`.user_id`=1;
Run Code Online (Sandbox Code Playgroud)