スレ立てるまでもない質問はここで 123匹目at TECH
スレ立てるまでもない質問はここで 123匹目 - 暇つぶし2ch20:デフォルトの名無しさん
12/12/09 18:09:22.33
名前と属性を管理するデータベースを作りたいと思っててます。

例えば、
Aさんは「水泳」属性、「走行」属性を持ちます。
Bさんは「水泳」属性、「暗視」属性を持ちます。

この場合、

Name | Attribution
A | 水泳
A | 走行
B | 水泳
B | 暗視

のように登録するのは効率が悪いと思うのです。
何か効率のいいデータベースの構成はないでしょうか?

21:デフォルトの名無しさん
12/12/09 18:18:05.63
>>20
属性の種類に限りがあるかどうかで変わる

22:デフォルトの名無しさん
12/12/09 18:19:49.85
table1(table1ID,name)
table2(table2ID,Attribution )
table3(table1ID,table2ID)

テーブル名と主キー名は適当なんで
好きな名前におきかえてね

23:デフォルトの名無しさん
12/12/09 18:20:44.24
データベース板っていうのがあるんだけど・・・。
とりあえずこの情報だけじゃ判断しかねるわ

24:デフォルトの名無しさん
12/12/09 18:32:41.22
>>21
限りはあります

>>22
何のコードですか?
MySQLでしょうか?

>>23
何が足りないでしょうか。

25:デフォルトの名無しさん
12/12/09 18:43:34.70
>>24
データの種類の数
一人当たりの属性の数

26:デフォルトの名無しさん
12/12/09 18:45:21.06
たとえば、属性の数が数種類くらいなら、ビットを使って所属属性を設定する手もある。
こういう事をすると検索のスピードとかにも影響があるかもしれないし、
その場合の検索スピードは「名前」の数との兼ね合いもあるかもしれない。

0x01 : 水泳
0x02 : 走行
0x04 : 暗視

Name | Attribution
A | 0x03
B | 0x05

27:デフォルトの名無しさん
12/12/09 18:49:39.52
Name|A*(水泳?1:0)+(A-1)*(走行?1:0)…1*(暗視?1:0)

28:22
12/12/09 19:02:55.23
>>24
コードじゃなくてテーブルの構成ね
テーブル名(列名1,列名1,・・・・列名n)


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch