Zealot Asked:2020-09-13 05:24:30 +0000 UTC2020-09-13 05:24:30 +0000 UTC 2020-09-13 05:24:30 +0000 UTC 查询在 MySQL 中连接两个表 772 请帮我索取样品。 第一个表有列спортсмен和серийный_номер_велосипеда。 第二张表:серийный_номер_велосипеда, цвет, год_выпуска。 选择спортсмен, серийный_номер_велосипеда, цвет,的单个查询是год_выпуска什么? mysql 3 个回答 Voted Best Answer Denis 2020-09-13T15:01:32Z2020-09-13T15:01:32Z 使用表连接: 如果两个表中的自行车序列号列表相同(一个表中没有此类元素,而第二个表中没有),则可以使用内部连接join( inner join): SELECT s.sportsman, s.serial, b.color, b.year FROM sportsmen s JOIN bike b ON s.serial = b.serial sqlfiddle上的表示例 查询结果 或者: SELECT s.sportsman, s.serial, b.color, b.year FROM sportsmen s, bike b WHERE s.serial = b.serial 查询结果 如果自行车序列号列表不匹配,则在使用内连接inner join( join) 连接表时,您可能会丢失必要的行,因此要保存左表中的所有行,您必须使用left join: SELECT s.sportsman, s.serial, b.color, b.year FROM sportsmen s LEFT JOIN bike b ON s.serial = b.serial sqlfiddle上的表示例 查询结果 Tennik 2020-09-13T05:28:27Z2020-09-13T05:28:27Z SELECT с.спортсмен, в.серийный_номер_велосипеда, в.цвет, в.год_выпуска FROM спортсмен с LEFT JOIN велосипед в ON с.серийный_номер_велосипеда = в.серийный_номер_велосипеда; Maxim Timakov 2020-09-13T05:30:24Z2020-09-13T05:30:24Z 你需要一个左连接语句 select t1.*, t2.color, t2.year from t1 left join t2 on t1.serial_num = t2.serial_num
使用表连接:
如果两个表中的自行车序列号列表相同(一个表中没有此类元素,而第二个表中没有),则可以使用内部连接
join(inner join):sqlfiddle上的表示例
查询结果
或者:
查询结果
如果自行车序列号列表不匹配,则在使用内连接
inner join(join) 连接表时,您可能会丢失必要的行,因此要保存左表中的所有行,您必须使用left join:sqlfiddle上的表示例
查询结果
你需要一个左连接语句