0
我有两个表,让我们假装自己是以下几点:如何通过在SQL中加入进行分组?
宠物
+----+----------+-------+
| id | name | type |
+----+----------+-------+
| 1 | itchy | mouse |
| 2 | poochie | dog |
| 3 | scratchy | cat |
| 4 | john | human |
+----+----------+-------+
衣领
+----+---------------+--------+
| id | name | pet_id |
+----+---------------+--------+
| 1 | collar_heaven | 2 |
| 2 | red_collar | 2 |
| 3 | cat_collar | 3 |
| 4 | tiny_collar | 1 |
| 5 | backup_collar | 2 |
+----+---------------+--------+
(请注意,宠物ID#4没有领)
我想为每个与宠物连接的项圈选择MIN(name)
和MAX(name)
。
因此所需的输出是:
预期输出本质某种
+----+----------+-------+-------------------+------------------+
| id | name | type | collar_first_name | collar_last_name |
+----+----------+-------+-------------------+------------------+
| 1 | itchy | mouse | tiny_collar | tiny_collar |
| 2 | poochie | dog | backup_collar | red_collar |
| 3 | scratchy | cat | cat_collar | cat_collar |
| 4 | john | human | NULL | NULL |
+----+----------+-------+-------------------+------------------+
SELECT id, name, type, MIN(name) as first_name, MAX(name) as last_name
FROM pets JOIN collars
GROUP BY pet_id