|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.04.2017, 21:18 | #1 |
Пользователь
Регистрация: 22.04.2017
Сообщений: 16
|
Построение вариантов
Добрый день всем!
У меня есть таблица, в ней есть id,comp,device,variant,id_variant. На каждом компе у меня есть варианты их переоснащения(хранятся они в variant), например: 1;ОЗУ-512, 1,11 1;ОЗУ-256, 1,11 1;видеокарта -512, 1,11 1;ОЗУ-256, 2,12 1;ОЗУ-128, 2,12 1;видеокарта -256, 2,12 2;ОЗУ-512, 1,21 2;ОЗУ-256, 1,21 2;видеокарта -512, 1,21 и т.д. id_variant- это конкатенация comp и variant. И мне нужно составить все возможные варианты варианты переоснащения компов, это как сочетание по id_variant, но тут каждый комп уникален... Должно получиться следующее: (если предположим что у нас 3 компа и по 3 варианта) comp,id_variant 1,11 2,21 3,31 1,12 2,21 3,31 1,13 2,21 3,31 1,11 2,22 3,31 1,11 2,23 3,31 1,11 2,21 3,32 1,11 2,21 3,33 и т.д. И как это можно прописать запросом в SQL? Прописывать в ручную - это бред, количество компов много и вариантов много, и они могут увеличиваться... декартово произведение не совсем помогает, он или слишком много вариантов предлагает или не все выдает... Не знаю как это сделать( Помогите пожалуйста. |
22.04.2017, 21:58 | #2 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 64
|
Категорическая неправильная организация хранения данных в sql. Айди - это уникальный номер, отталкивайтесь от этого. И нормализируйте таблицу.
|
23.04.2017, 08:17 | #3 |
Пользователь
Регистрация: 22.04.2017
Сообщений: 16
|
id_variant - это я просто назвал, так как вариант в варианте не знал как лучше назвать, поэтому назвал так, это роли не играет....
Мне бы хотя бы пример как можно примерно сделать такое, там я соображу... А пока я в тупике( |
23.04.2017, 09:27 | #4 | ||
Старожил
Регистрация: 17.11.2010
Сообщений: 19,042
|
Цитата:
Цитата:
Сделать в принципе можно, используя возможности процедурных команд SQL типа курсоры и циклы. Или with пристроить. А оно надо?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 23.04.2017 в 09:33. |
||
23.04.2017, 11:52 | #5 | |
Пользователь
Регистрация: 22.04.2017
Сообщений: 16
|
Цитата:
Я знаю что это сочетание, но как можно написать не со статическими параметрами, я не знаю( пытался что-то найти, но то бред, то не то, то еще фигня какая-то... Вот и мучаюсь думаю, уже почти месяц над этой фигней работаю, остальное все нормально, хотя там тоже не меньше строк и работ... А тут загвоздка( Есть предложения как это можно реализовать? |
|
23.04.2017, 16:13 | #6 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 19,042
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 23.04.2017 в 16:20. |
|
23.04.2017, 16:39 | #7 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,150
|
А в целом задача то какая стоит? Наверное что-то то тривиально, типа фильтра для выбора компа в инет магазине? Там комбинации все знать не нужно...
|
23.04.2017, 16:51 | #8 |
Пользователь
Регистрация: 22.04.2017
Сообщений: 16
|
Есть много компов и у них свои задачи и для каждого компа нужно разные девайсы, с помощью этих вариантов, после их составления конечно(что пока не получается), считаю энтропию и выбираю самый лучший вариант переоснащения компов... Это для статистики и правильного выбора переоснащения компа...
|
23.04.2017, 16:54 | #9 | |
Пользователь
Регистрация: 22.04.2017
Сообщений: 16
|
Цитата:
Да вот такая задача, не особо то я шучу, сам понимаю сколько это будет, считал, но SQL справиться, столько он записывал, конечно на минут 15-20 подзавис, но выдал 19 млрд. И там не будет трилионов.... там милиарды.... |
|
24.04.2017, 18:44 | #10 |
Пользователь
Регистрация: 22.04.2017
Сообщений: 16
|
А через деревья построить возможно? Если да, то как это сделать?
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
создание массива вариантов | mahatmaQL | Общие вопросы Delphi | 4 | 27.06.2016 00:15 |
Перебор вариантов | Kirom | Помощь студентам | 2 | 27.01.2015 18:45 |
перебор вариантов | luffi | Общие вопросы Delphi | 2 | 05.12.2011 16:47 |
выбор возможных вариантов | Asante | Microsoft Office Excel | 2 | 02.12.2011 16:34 |
Построение матрицы вариантов раскроя | max1m9 | Microsoft Office Excel | 0 | 07.06.2010 17:27 |