|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
Есть такой DataTable id data1 data2 data3 data41item1 / item2 item5 item7 item9 / item102item11 item13 / item14 item15 item173item19 item21 / item22 item23 item254item27 item29 / item30 item31 item335item35 item37 / item38 item39 item416item43 item45 item47 item49 / item507item51 item52 item53 item55 Нужно преобразовать его в такой вид data1 data2 data3 data4item1 item5 item7 item9item1 item5 item7 item10item2 item5 item7 item9item2 item5 item7 item10item11 item13 item15 item17item11 item14 item15 item17item19 item21 item23 item25item19 item22 item23 item25item27 item29 item31 item33item27 item30 item31 item33item35 item37 item39 item41item35 item38 item39 item41item43 item45 item47 item49item43 item45 item47 item50item51 item52 item53 item55 есть какие-то идеи, как это сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2016, 00:13 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
_Novichok, Надо не сетку модифицировать а массив данных ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2016, 04:16 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
Где-то в степи, Мне кажется, что делать это на таблице в ~150k записей, - будет долго. При вставке в таблицу тоже нет возможности этого делать Данная таблица нужна для определенного процесса, и в последующем не используется. Поэтому решение разбивать ее частями уже во время работы программы мне кажется оптимальным. Решил это рекурсивным методом ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2016, 19:40 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
_NovichokРешил это рекурсивным методомБД для этого дела самое то ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2016, 19:57 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
_NovichokЕсть такой DataTable Тяжелый случай. Разработчик БД что-нибудь слышал про нормализацию? Хотя бы про первую форму? 1NFКаждое пересечение строки и столбца содержит ровно одно значение из соответствующего домена (и больше ничего). ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2016, 13:31 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
Я знаю про нормальные формы, дело не в них. Есть приложение, для которого такая логика нужна - специфическая прикладная область. Не я придумывал ту структуру, которая сейчас есть, не мне ее ломать. Мне остается только допиливать поверх существующего. Поэтому и пляшу от данных полученных в DataTable, а не от БД ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2016, 15:08 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
ну у нас есть в некоторых местах такая логика. В справочнике исторически сложилась пара сотен перечислений Работает в запросах через табличную функцию Код: plsql 1. 2. 3. 4. 5. 6. 7.
для запроса ТС это будет выглядеть так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2016, 16:26 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
_Novichok, В исходных данных всего 5 столбцов? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2016, 16:48 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
_NovichokРешил это рекурсивным методомМожно и без рекурсии. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2016, 20:21 |
|
Размножить строки таблицы
|
|||
---|---|---|---|
#18+
Usman_NovichokРешил это рекурсивным методомМожно и без рекурсии.вложенным циклом по количеству полей ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2016, 10:48 |
|
|
start [/forum/topic.php?fid=20&msg=39165741&tid=1400813]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
26ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 137ms |
0 / 0 |