重複データがあったとき、1件だけ表示したい場合があると思います。
私の場合は、検索でソートした後に重複データを1件だけ表示するようにしたかったのです。

チェックボックスでソート

↓地域を選択
▼東京都(value="1")
 大阪府(value="2")
 福岡県(value="3")

↓カテゴリを選択
□りんご(value="1")
□みかん(value="2")
□アイス(value="3")
□もも(value="4")
□メロン(value="5")

複数チェックしてソートすることができる


登録データは・・・

tableA

id shop_id cate_no
1 0001 1
2 0001 3
3 0001 4
4 0002 4
5 0002 5
6 0003 5
7 0004 5

tableB

id shop_id place_no
1 0001 1
2 0002 1
3 0003 3
4 0004 1


INNER JOIN で結合
(表示するものによって変わりますが、ちょっと省略)

id shop_id place_no cate_no
1 0001 1 1
2 0001 1 3
3 0001 1 4
4 0002 1 4
5 0002 1 5
6 0003 3 5
7 0004 3 5


カテゴリ登録ひとつに対して、店舗データひとつ、という登録の仕方をしています。
つまり、0001番の店舗は、りんごとアイスとももを扱っているので、3件のデータが登録されている
ことになります。

別のテーブルで、地域の登録も行っています。(設計上で別テーブルにしています)


で、SQL

>| GROUP BY sports_category.shop_id HAVING count( * ) > 1

SELECT * FROM tableA INNER JOIN tableB ON tableA.shop_id = tableB.shop_id
WHERE place_no = 1 AND cate_no=1 AND cate_no=3;