







|
MySQL.RU - Webboard
Вернуться
подсобите построить структуру БД (Andrew) 23/09/2003 - 09:28:40
Re: подсобите построить структуру БД (Валентин) 23/09/2003 - 22:05:42
From: Andrew - 23/09/2003 - 09:28:40
Subject:подсобите построить структуру БД
-----------------
Уважаемые, подсобите начинающему построить структуру БД.
Имеем следующую структуру данных:
Список элементов fileN, количество элементов ~20000
У каждого элемента есть от 1 до ~18 ключа keyN, всего ключей ~130000
file1=kye1,key2,key4,key15
file2=kye2,key3,key5
file3=kye3,key8
file4=kye5,key6,key7,key9,key2
Для отбора будут доступны списки ключей keyN (конечно же не все 130000 сразу)
key1
key2
key3
key4...100
Потребуется последовательный выбор fileN по ключам keyN, то есть, - например после выбора ключа key2 останутся:
key1
key2
key4
key5
key3
key6
key7
key9
key15
соответствующие элементам file1, file2, file4
после выбора из того что осталось ключа key5, останутся file2 и file4 и соответственно из дальнейшего выбора исчезнут ключи key1,4,15.
и т.д. (выбор может прерваться на любом уровне отбора)
В общем единственное что пришло в голову это построить что то вроде матрицы
где по вертикали fileN_id, а по горизонтали keyN_id (или наоборот)
# # | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
1 # | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
2 # | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
3 # | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
4 # | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 |
Но я кончено не уверен что это хорошая идея и даже если это приемлемо, то я так и не понял как можно осуществить выборку, чтобы после выборки убрать лишние столбцы, и получить их как список.
В общем хелп ми плз... (MySQL 3.23)
С надеждой,
Андрей М.
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
10818
|
|