|
|
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Комрады прошу вашей помощи, не могу разобраться с примером книги т.к. там это тупо пропущено, ситуация: есть главная таблица Код: plsql 1. 2. 3. 4. 5. 6. с неатомарным столбцом interests в котором данные перечислены через запятую: contact_id interests1 acting, dancing2 fishing, drinking Соединительная таблица: Код: plsql 1. 2. 3. 4. 5. 6. 7. Код: plsql 1. 2. 3. 4. 5. 6. 7. И проблема в том что я непонимаю как перенести данные из столбца interests и столбца contact_id в таблицы conract_interest и interests так чтобы не потерялась связанность записей да и к тому же разделить значения чтобы в одном кортеже был только один интерес(ну привести в нормальную форму) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2015, 00:05 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Потребуется опорная таблица с количеством записей не менее максимального количества индивидуальных значений в поле interests. Её умножить на исходную и, ориентируясь на значение номера записи в ней, выделять соотв. отдельное значение. Записи, где оно непусто, вставлять в целевые таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2015, 09:01 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
AkinaПотребуется опорная таблица с количеством записей не менее максимального количества индивидуальных значений в поле interests. Её умножить на исходную и, ориентируясь на значение номера записи в ней, выделять соотв. отдельное значение. Записи, где оно непусто, вставлять в целевые таблицы. пожалуйста не могли бы вы это выразить в SQL коде ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2015, 14:45 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Ну типа Код: sql 1. 2. 3. А дальше разберёшься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2015, 15:36 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Akina, Жесть вот это запросик :-) большое спасибо! С функциями извлечения подстроки до разделителя запятой и им подобные я понимаю, а вот подзапрос Код: plsql 1. и далее.. Вообще вкурить не могу, пожалуйста обьясните как он действует и всю остальную магию с тем как оно получается что Id не теряются, а дублируясь присваиваются тем же интересам что и были... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2015, 16:48 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Lord_Sota_Sil, так выполните этот запрос отдельно - увидите просто 1 столбец 4 записи, т.е. это сгенерированная табличка с 4-мя записями ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.12.2015, 19:09 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Alex_UstinovLord_Sota_Sil, так выполните этот запрос отдельно - увидите просто 1 столбец 4 записи, т.е. это сгенерированная табличка с 4-мя записями И как мне это поможет понять смысл всего запроса? Это будут просто выдранные слова из контекста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2015, 14:50 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Хочешь понять смысл? Выполни вот такой запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. и проанализируй, соотнося с исходным запросом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2015, 20:59 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Akina, Я запутался ещё сильнее, в запросе что вы дали писало ошибку мол не хватает скобки возле len2 исправил как понял правильно или нет - заработало, но в итоговой таблице был столбец со странным названием REPLACE(m.interests, ',', '') В итоге появилась такая табличка: Как я не ломал голову всё равно не могу понять вашей фишки с UNION как они работают? и почему их 4 ? и почему например интерес drinking повторяется 3 раза? да и вообще остальные интересы состоящие из одного слова дублируются по 4 раза... столбцы len1 и len2 понятно что различаются на количество запятых ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2015, 23:19 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Lord_Sota_Sil, это читали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 11:09 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Lord_Sota_SilAkinaПотребуется опорная таблица с количеством записей не менее максимального количества индивидуальных значений в поле interests. Её умножить на исходную и, ориентируясь на значение номера записи в ней, выделять соотв. отдельное значение. Записи, где оно непусто, вставлять в целевые таблицы. пожалуйста не могли бы вы это выразить в SQL коде Так нельзя это на SQL написать, нужен цикл по значениям в каждом поле. Это либо скрипт надо писать, либо -- процедуру. Внешний цикл по курсору на таблицу, вложенный -- по значениям в неатомарном поле. В тебе -- вставка записи в новую таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2015, 14:23 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
MasterZivТак нельзя это на SQL написать Да ну? Там, правда, инты, но суть-то от этого не меняется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2015, 07:24 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
т.к. с SQL знаком недавно....подскажите а как из временной таблицы вщять все эти записи и вставить в другую таблицу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2015, 20:51 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Lord_Sota_Silкак из временной таблицы ... все ... записи ... вставить в другую таблицу http://dev.mysql.com/doc/refman/5.6/en/insert-select.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2015, 21:05 |
|
||
|
Перенос данных из таблицы с одним НЕ атомарным столбцом в другую таблицу
|
|||
|---|---|---|---|
|
#18+
Lord_Sota_Sil, у меня в книге похожий пример приводится в теме по нормализации БД. если с нормализацией разбираетесь, то пропущенным шагом будет представление 1НФ (contact_id, interest_id, interest) дальше из 1НФ получаем таблицы 2 и 3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.12.2015, 23:05 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39125427&tid=1832343]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
163ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 499ms |

| 0 / 0 |
