MySQL如何将查询结果存入其他表格中?

MySQL如何将查询结果存入其他表格中?

如何在MySQL中将查询结果存入另一个表格中是一个常见的问题。本文将为您介绍MySQL中两种常用的方法来将查询结果存入其他表格中,并给出了示例。

阅读更多:MySQL 教程

1. INSERT INTO … SELECT

一种将查询结果存入其他表格的方法是使用INSERT INTO … SELECT语句。

例如,假设我们有两张表格:orders和orders_archive。orders表格中包含订单数据,而orders_archive表格则用于存储旧订单数据。

要将orders表格中的旧订单数据存储到orders_archive表格中,我们可以使用以下语句:

INSERT INTO orders_archive
SELECT * FROM orders
WHERE order_date < '2021-01-01';
Mysql

这将从orders表格中选择所有订单日期早于2021-01-01的行,并将它们插入到orders_archive表格中。

2. CREATE TABLE … AS SELECT

另一种将查询结果存入其他表格的方法是使用CREATE TABLE … AS SELECT语句。

例如,假设我们在一个表格中存储了顾客与订单的数据,并且想要创建一个新的表格,其中每个顾客只有一个最大订单金额。

要创建这个新的表格,我们可以使用以下语句:

CREATE TABLE customer_max_order_amt AS
SELECT customer_id, MAX(order_amt) AS max_amt
FROM orders
GROUP BY customer_id;
Mysql

这将从orders表格中选择每个顾客的最大订单金额,并创建一个新的customer_max_order_amt表格。

总结

在MySQL中将查询结果存储到其他表格中有多种方法,其中包括使用INSERT INTO … SELECT和CREATE TABLE … AS SELECT语句。将这些方法应用到特定问题中,可以实现更有效的数据管理和查询。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册