SQL特定于比较表的要求

SQL特定于比较表的要求,sql,Sql,我正在尝试将2个查询合并为1个(将每日查询的数量减半):我有2个表,我想对1个表执行一个查询,然后对另一个表执行相同的查询,该表具有相同的列表,只是条目较少 基本上,这是一个(让我们称之为混淆)人和爱好的列表。一张表是所有人和爱好,另一张短名单是我见过的人和爱好。表2可在表1中找到。表1包含了表2中未找到的条目(我还没有见过的人) 这些表是从其他地方同步的,我想做的是打印第一列中所有人的列表,然后只打印两个列表中的人的爱好。这样我可以看到列表合并,并跟踪两个列表之间的差距缩小的速度。我尝试了许多

我正在尝试将2个查询合并为1个(将每日查询的数量减半):我有2个表,我想对1个表执行一个查询,然后对另一个表执行相同的查询,该表具有相同的列表,只是条目较少

基本上,这是一个(让我们称之为混淆)人和爱好的列表。一张表是所有人和爱好,另一张短名单是我见过的人和爱好。表2可在表1中找到。表1包含了表2中未找到的条目(我还没有见过的人)

这些表是从其他地方同步的,我想做的是打印第一列中所有人的列表,然后只打印两个列表中的人的爱好。这样我可以看到列表合并,并跟踪两个列表之间的差距缩小的速度。我尝试了许多SQL组合,但它们要么过滤掉第一个表,只匹配对这两个表都为真的项(即,只给我表2),要么只是将表2添加到表1中

下面是我尝试做的示例:

+---------+----------+--+----------+---------+--+---------+----------+
| table1  |          |  |  table2  |         |  |  query  |          |
+---------+----------+--+----------+---------+--+---------+----------+
| name    | hobby    |  | activity | person  |  | name    | hobby    |
| bob     | fishing  |  | fishing  | bob     |  | bob     | fishing  |
| bill    | vidgames |  | hiking   | sarah   |  | bill    |          |
| sarah   | hiking   |  | planking | sabrina |  | sarah   | hiking   |
| mike    | cooking  |  |          |         |  | mike    |          |
| sabrina | planking |  |          |         |  | sabrina | planking |
+---------+----------+--+----------+---------+--+---------+----------+
通常我会花几天的时间来更好地学习SQL,但是我在工作中已经筋疲力尽了


我应该提到的是,表2是翻转的,标题都是唯一的(不要认为这很重要)

我想你只需要一个
左连接

select t1.name, t2.activity as hobby
from table1 t1 left join
     table2 t2
     on t1.name = t2.person;

谢谢你!你解决了!然而,在我匆忙创建示例的过程中,我不记得包括其中一个列表被翻转(对此做不了太多,以这样的方式到达)。标题是唯一的,但我可以理解。因此需要相同的结果,但现在我得到的是name | name;name | blank