SQL質疑応答スレ 10問目

このエントリーをはてなブックマークに追加
276NAME IS NULL
MySQL5を使用しています。


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

itemテーブル
item_id name color
1 商品1 3
2 商品2 12
3 商品3 7

colorテーブル
color_id name
1 赤
2 青
4 緑
8 黒

item.colorの部分は、ビット演算の概念を使って
3なら赤+青
12なら緑+黒
7なら赤+青+緑
の色を持っていることを意味します。

これを結合の段階で、以下のように色名を取得することは可能なのでしょうか?

1 商品1 赤
1 商品1 青
2 商品2 緑
2 商品2 黒
3 商品3 赤
3 商品3 青
3 商品3 緑