У MySQL я хотів би створити нову таблицю з усією інформацією в цьому запиті:
select * into consultaa2 from SELECT
CONCAT( "UPDATE customers SET
customers_default_address_id= ",
(SELECT a.address_book_id FROM
address_book a where
c.customers_id=a.customers_id order by
address_book_id desc limit 1), "
WHERE customers_id = ", customers_id,
";") AS sql_statement FROM customers c
where c.customers_id > 3894;
Запит занадто довгий, щоб веб-переглядач показував стислість, і мені це потрібно для оновлення.
Відповіді:
14 за відповідь № 1Вставлення в таблицю з інформацією запиту має такий формат
INSERT INTO <TABLE-1>
SELECT * FROM <TABLE-2>
У вашому випадку це було б
insert into consultaa2
SELECT CONCAT( "UPDATE customers SET customers_default_address_id= ",
(SELECT a.address_book_id FROM address_book a where c.customers_id=a.customers_id order by address_book_id desc limit 1), " WHERE customers_id = ", customers_id, ";") AS sql_statement FROM customers c where c.customers_id > 3894;
Просто переконайтеся, що стовпці таблиці, яку ви вставляєте, та стовпці, що повертаються з відповідності запиту вибору.
97 за відповідь № 2
Ви можете зробити це так:
CREATE TABLE tablename SELECT * FROM othertable;
tablename
- це назва нової таблиці, яку ви хочете створити, SELECT * FROM othertable
це запит, який повертає дані, з яких слід створити таблицю.
8 за відповідь № 3
створення нової таблиці
Приклад з командного рядка mysql.
mysql> create table foo(id int, vorta text);
Query OK, 0 rows affected (0.02 sec)
Вставте рядки
mysql> insert into foo values(1, "for the hoarde");
Query OK, 1 row affected (0.00 sec)
подивись, що там
mysql> select * from foo;
+------+----------------+
| id | vorta |
+------+----------------+
| 1 | for the horde |
+------+----------------+
1 row in set (0.00 sec)
Створіть нову таблицю з інформацією із запиту
mysql> create table foo2 select * from foo;
Query OK, 1 row affected (0.01 sec)
Records: 1 Duplicates: 0 Warnings: 0
Перевірте, чи перемістилися дані
mysql> select * from foo2;
+------+----------------+
| id | vorta |
+------+----------------+
| 1 | for the horde |
+------+----------------+
1 row in set (0.00 sec)