Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / как преобразовать значения одной записи в значения одного поля? / 8 сообщений из 8, страница 1 из 1
14.11.2016, 09:19
    #39346603
atlasny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
Доброго дня! Помогите пожалуйста!
Как из двух таблиц:
id p
1 6
2 3
3 4
4 2

id p1 p2 p3 p4
1 5 7 1 8

Получить одну:
id p n
1 6 5
2 3 7
3 4 1
4 2 8
...
Рейтинг: 0 / 0
14.11.2016, 10:58
    #39346660
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
Преобразовать вторую таблицу в нормализованную (аналог unpivot). Типа
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT id, 1 as p, p1 as n
UNION ALL
SELECT id, 2, p2
UNION ALL
SELECT id, 3, p3
UNION ALL
SELECT id, 4, p4


Можно в запросе, можно вьюв сделать или статическую таблицу...
Остальное элементарно.
...
Рейтинг: 0 / 0
14.11.2016, 15:32
    #39346926
atlasny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
Akina,
я пытаюсь ваш код сделать в запросе и выдаёт ошибку: Unknown column 'id' in 'field list'. у меня точно такие две таблицы, которые я нарисовал
...
Рейтинг: 0 / 0
14.11.2016, 15:44
    #39346939
atlasny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
таблица а:
id p
1 6
2 3
3 4
4 2

таблица b:
id p1 p2 p3 p4
1 5 7 1 8
...
Рейтинг: 0 / 0
14.11.2016, 15:56
    #39346957
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
atlasnyу меня точно такие две таблицы, которые я нарисовалА я написал запрос ТОЧНО по твоим данным. У тебя таблицы безымянные, а у меня нет секций FROM.
...
Рейтинг: 0 / 0
14.11.2016, 16:18
    #39346971
atlasny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
Akina,
если вас не затруднит - я начинающий! как записать запрос с именами таблиц?
...
Рейтинг: 0 / 0
14.11.2016, 18:42
    #39347076
atlasny
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
Akina,
спасибо, большое! разобрался:

select id, z1, v.n from (select n,p from (
SELECT 1 as p, p1 as n from b UNION ALL
SELECT 2, p2 from b UNION ALL
SELECT 3, p3 from b UNION ALL
SELECT 4, p4 from b) d) v LEFT JOIN (a) on (a.id=v.p)
...
Рейтинг: 0 / 0
15.11.2016, 07:15
    #39347213
paver
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как преобразовать значения одной записи в значения одного поля?
atlasny,

таблицы логичнее поменять местами

Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT a.id, a.p, v.n FROM a
LEFT JOIN (
SELECT 1 as bid, p1 as n from b UNION ALL
SELECT 2, p2 from b UNION ALL
SELECT 3, p3 from b UNION ALL
SELECT 4, p4 from b
) v on a.id=v.bid
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / как преобразовать значения одной записи в значения одного поля? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]