Как запросить одну таблицу и добавить строки в другую, используя этот первый запрос? MySQL - PullRequest
0 голосов
/ 11 марта 2010

У меня есть несколько пользователей, настроенных в таблице MySQL с разными переменными. Я пытаюсь выяснить, что было бы лучшим способом сделать это. По сути, я хочу наградить всех моих зарегистрированных и активных пользователей ставками, которые хранятся в другой таблице.

Таким образом, для таблицы "пользователи" я выполнил этот запрос:

SELECT *  
 FROM `users` 
WHERE `active` = 1 
  AND `admin` = 0 
ORDER BY `users`.`id` ASC

Который покажет всех активных пользователей, которые не являются администраторами.

Теперь я хотел бы дать каждому из этих пользователей, которые указаны в поле «ID» в другой таблице.

Таким образом, в таблице «ставки» мне нужно было бы добавить новую строку для каждого из этих пользователей со всеми одинаковыми значениями, кроме поля «user_id», которое в основном будет соответствовать полю «id» таблицы ». пользователи "

Что было бы лучшим подходом для этого. В первом запросе более 6000 пользователей.

Ответы [ 2 ]

1 голос
/ 11 марта 2010

Можете ли вы сделать что-то подобное?

INSERT INTO bids 
   (col1, col12, col3)
SELECT
   users.col1, users.col2, users.col3 FROM users
WHERE users.active = 1 and users.admin = 0
ORDER BY users.id ASC
0 голосов
/ 11 марта 2010

Обычно не очень хорошая идея дублировать подобные данные, но есть также:

create table bids as select <fields> from users
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...