タグ機能を実現するための便利なデータベース設計を3つ紹介

colo-ri.jp

http://colo-ri.jp/develop/archives/scuttle_database_schema.png

自分は上記の Scuttle法 でカテゴリを実現しているので AND検索は GROUP BY v.Id HAVING COUNT( v.Id ) >= ? のように実現する

SELECT b.*
FROM scBookmarks b, scCategories c
WHERE c.bId = b.bId
AND (c.category IN ('CSS', 'HTML', 'JavaScript'))
GROUP BY b.bId
HAVING COUNT( b.bId )=3