1

このようなテーブルがあります。

+------------+-------------+--------------+
| name       | hobby       | hobby_number |
+------------+-------------+--------------+
| jack       | sport       | 1            |
| marco      | skydiving   | 3            |
| alfonso    | driving     | 1            |
| marco      | learning    | 2            |
| jack       | dancing     | 2            |
+------------+-------------+--------------+

SQL select ステートメントを使用して、一意の名前を 1 つだけ選択したいと考えています。
必要なテーブルは次のようになります。

+------------+-------------+--------------+
| name       | hobby       | hobby_number |
+------------+-------------+--------------+
| jack       | sport       | 1            |
| marco      | learning    | 2            |
| alfonso    | driving     | 1            |
+------------+-------------+--------------+

SQLクエリはどうあるべきですか?

前もって感謝します。

4

1 に答える 1

3
select t.* from your_table t
inner join
(
    select name, min(hobby_number) as minh
    from your_table
    group by name
) x on x.name = t.name and x.minh = t.hobby_number
于 2013-09-18T11:00:36.533 に答える