SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.07.2015 18:01:49

Pavel
Участник
Зарегистрирован: 19.07.2015
Сообщений: 8

Заполнить колонку таблицы результатами вложенного запроса

Здравствуйте.
Имеются 2 таблицы. В одной есть колонка "А", в другой - "Б". Таблица с колонкой "А" содержит много записей, таблица с "Б" пуста. Можно ли заполнить колонку "Б" второй таблицы содержимым колонки "А" первой таблицы за один запрос?
Спасибо.

Неактивен

 

#2 19.07.2015 18:07:30

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Заполнить колонку таблицы результатами вложенного запроса

Здравствуйте.
Можно, да смотрите в сторону https://dev.mysql.com/doc/refman/5.0/en … elect.html


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 19.07.2015 19:08:50

Pavel
Участник
Зарегистрирован: 19.07.2015
Сообщений: 8

Re: Заполнить колонку таблицы результатами вложенного запроса

Спасибо, помогло )

Неактивен

 

#4 19.07.2015 20:47:55

Pavel
Участник
Зарегистрирован: 19.07.2015
Сообщений: 8

Re: Заполнить колонку таблицы результатами вложенного запроса

Да, только теперь другая проблема: как объединить SELECT внутри INSERT c VALUE?

Нужно вставить 5 строк на каждое значение из SELECT:

INSERT INTO table1 (
        entity_type_id,
        attribute_id,
        store_id,
        entity_id,
        value)
    SELECT
        3,
        42,
        0,
        @aaa:=cat_alt_manufacturer.ID_mfa+1000,
        1
    FROM cat_alt_manufacturer;

работает, вставляет 1 строку. А

INSERT INTO catalog_category_entity_int (
        entity_type_id,
        attribute_id,
        store_id,
        entity_id,
        value)
    VALUES (SELECT
        3,
        42,
        0,
        @a:=cat_alt_manufacturer.ID_mfa+1000,
        1),(SELECT
        3,
        67,
        0,
        @a,
        1),(SELECT
        3,
        50,
        0,
        @a,
        NULL),(SELECT
        3,
        51,
        0,
        @a,
        0),(SELECT
        3,
        68,
        0,
        @a,
        1)
    FROM cat_alt_manufacturer

не работает ((( ЧЯДНТ?

Отредактированно Pavel (19.07.2015 21:01:16)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson