原有表结构
CREATE TABLE `t_card_user` ( `id` varchar(32) NOT NULL, `card_user_id` bigint(20) DEFAULT NULL COMMENT ‘UserID受设备最大用户数影响,范围为1--最大用户数。‘, `card_no` bigint(20) DEFAULT NULL COMMENT ‘CardNo最大为4294967295(2^32次方)‘, `start_time` datetime DEFAULT NULL COMMENT ‘StartTime格式填写规范:YYYY-MM-DD空格 hh:mm:ss,例如:2015-01-23 14:42:40‘, `end_time` datetime DEFAULT NULL COMMENT ‘end_time格式填写规范:YYYY-MM-DD空格 hh:mm:ss,例如:2015-01-23 14:42:40‘, `super_user` tinyint(4) DEFAULT NULL COMMENT ‘SuperUser是用户是否为管理员(0 普通用户, 1 管理员)‘, `dev_id` varchar(32) DEFAULT NULL COMMENT ‘设备id‘, `passwd` varchar(10) DEFAULT NULL COMMENT ‘Passwd只能为数字,最大长度为6位。‘, `type` tinyint(3) DEFAULT NULL COMMENT ‘设备类型‘, `status` tinyint(3) DEFAULT ‘2‘ COMMENT ‘0:失败,1:成功,2:已发送‘, `active_flag` tinyint(2) DEFAULT ‘1‘ COMMENT ‘1未删除,0删除‘, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8; 之前做门禁的时候,因为数据库当时设计和业务逻辑实现有问题,导致很多业主的权限无法开门。基于这种情况,当时我们的解决方案是,通过sql查询出所需要的数据,在通过csv导出,在进行数据的拼装最后在导入数据库 虽然当时解决了燃眉之急,但我们的项目负责人说我的这种方法很拙劣,完全可以写一个sql脚本完成,后来通过查找资料,可以使用脚本完成这一操作。
--查询并将结果封装到新创建的新表中create table t_card_user_bk(SELECTREPLACE (uuid(), ‘-‘, ‘‘) id,card_user_id,card_no,start_time,end_time,super_user,‘784368217‘ AS dev_idFROMt_card_user_copyWHEREdev_id = ‘SR-0601010000078‘); --将新创建的表中的数据重新插入到原来的数据库中INSERT INTO t_card_user(id, card_user_id,card_no,start_time,end_time,super_user,dev_id) select id, card_user_id,card_no,start_time,end_time,super_user,dev_id from t_card_user_bk ---------------------
mysql查询-从表1中查询出来的结果重新插入到表1
标签:负责人 普通用户 datetime rtt 最大 def inno 次方 type
小编还为您整理了以下内容,可能对您也有帮助:
mysql 如何把查询到的结果插入到另一个表中
其实很简单,只是为了忘记,做个记录,用的时候方便。
不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个表的数据批量导入到另一个表的情况,甚至有时还需要指定导入字段。
本文就将以MySQL数据库为例,介绍如何通过SQL命令行将某个表的所有数据或指定字段的数据,导入到目标表 中。此方法对于SQLServer数据库,也就是T-SQL来说,同样适用 。
类别一、 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:
INSERT INTO 目标表 SELECT * FROM 来源表 ;
例如,要将 articles 表插入到 newArticles 表中,则可以通过如下SQL语句实现:
INSERT INTO newArticles SELECT * FROM articles ;
类别二、 如果只希望导入指定字段,可以用这种方法:
INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表 ;
请注意以上两表的字段必须一致,否则会出现数据转换错误。
INSERT INTO TPersonnelChange(UserId,
DepId,
SubDepId,
PostionType,
AuthorityId,
ChangeDateS,
InsertDate,
UpdateDate,
SakuseiSyaId
)SELECT
UserId,
DepId,
SubDepId,
PostionType,
AuthorityId,
DATE_FORMAT(EmployDate, '%Y%m%d'),
NOW(),
NOW(),
1
FROM
TUserMst
WHERE
`Status` = 0
AND QuitFlg = 0
AND UserId > 2
mysql 查询语言 一张表的数据插入另一张表的sql语句
示例:
INSERTINTOTPersonnelChange(
UserId,
DepId,
SubDepId,
PostionType,
AuthorityId,
ChangeDateS,
InsertDate,
UpdateDate,
SakuseiSyaId
)SELECT
UserId,
DepId,
SubDepId,
PostionType,
AuthorityId,
DATE_FORMAT(EmployDate,'%Y%m%d'),
NOW(),
NOW(),
1.FROM
TUserMstWHERE
`Status`=0
ANDQuitFlg=0
ANDUserId>2
扩展资料
mysql从一张表查数据并插入另一张表
INSERTINTOtable1(table1_field1,table1_field2,...)selecttable2_filed1,table2_field2,...fromtable2wherecondition1andcondition2...;
//一张表符合条件的数据插入另一张表对应字段中
insertintoshelve_goods_info(proct_id,`name`,image,original_amount,amount,spec_id,spec_str,sync_time,last_updtime)selectDISTINCTproct_id,`name`,image,original_amount,amount,spec_id,spec_str,sync_time,NOW()fromjingguo_order_goodsgroupbyproct_idorderbysync_timedesc;
//根据一张表的数据修改另一张表的数据
updateshelve_goods_infoass,ttastsets.print_title=t.newname,s.price=t.newprice,original_price=Ceil(t.newprice*10/8)wheres.name=t.orname;
mysql中,如何用一条SQL将一张表里的数据插入到另一张表?
/12分步阅读
打开SQL Server Management Studio,按图中的路径进入导入数据界面。
2/12
导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。
3/12
数据源:选择“Microsoft Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。
4/12
选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。
5/12
再次确认文件路径没有问题,点击下一步。
6/12
默认为是使用的WINODWS身份验证,改为使用SQL身份验证。输入数据库密码,注意:数据库,这里看看是不是导入的数据库。也可以在这里临时改变,选择其它数据库。
7/12
选择导入数据EXCEL表内容范围,若有几个SHEET表,或一个SHEET表中有些数据我们不想导入,则可以编写查询指定的数据进行导入。点击下一步。
8/12
选择我们需要导入的SHEET表,比如我在这里将SHEET表名改为price,则导入后生面的SQL数据库表为price$。点击进入下一步。
9/12
点击进入下一步。
10/12
在这里完整显示了我们的导入的信息,执行内容,再次确认无误后,点击完成,开始执行。
11/12
可以看到任务执行的过程和进度。
12/12
执行成功:我们可以看看执行结果,已传输1754行,表示从EXCEL表中导入1754条数据,包括列名标题。这样就完成了,执行SQL查询语句:SELECT * FROM price$就可以查看已导入的数据内容。
1. 表结构完全一样
insert into 表1
select * from 表2
2. 表结构不一样(这种情况下得指定列名)
insert into 表1 (列名1,列名2,列名3)
select 列1,列2,列3 from 表2
Mysql 怎样将一个数据库中表 数据 插入到 另一个数据库 表中
1.如果2张表的字段一致插入全部数据:
INSERT
INTO
目标表
SELECT
*
FROM
来源表;
insert
into
db1.table1
select
*
from
db2.table2;
2.如果只希望导入指定字段:
INSERT
INTO
目标表
(字段1,
字段2,
...)
SELECT
字段1,
字段2,
...
FROM
来源表;(这里的话字段必须保持一致)
insert
into
db1.table(id)
select
id
from
db2.table2;
Mysql 怎样将一个数据库中表 数据 插入到 另一个数据库 表中
1.如果2张表的字段一致插入全部数据:
INSERT
INTO
目标表
SELECT
*
FROM
来源表;
insert
into
db1.table1
select
*
from
db2.table2;
2.如果只希望导入指定字段:
INSERT
INTO
目标表
(字段1,
字段2,
...)
SELECT
字段1,
字段2,
...
FROM
来源表;(这里的话字段必须保持一致)
insert
into
db1.table(id)
select
id
from
db2.table2;
mysql 数据库 如何用sql语句查询数据后再插入本表?
你好,很高兴回答你的问题。
我理解你的这个需求可以用下面的语句实现。
insert into table_a (m) select 'efg' as m from table_a where m='abc'
其他字段自行补一下。
如果主键不是自增的话,还需要考虑下主键值。
如果有帮助到你,请点击采纳。
mysql 数据库 如何用sql语句查询数据后再插入本表?
你好,很高兴回答你的问题。
我理解你的这个需求可以用下面的语句实现。
insert into table_a (m) select 'efg' as m from table_a where m='abc'
其他字段自行补一下。
如果主键不是自增的话,还需要考虑下主键值。
如果有帮助到你,请点击采纳。
MySQL:如何将两张表的查询结果插入到一张新的表
下面为您介绍的方法实现的是两张表的查询结果插入一张新表,该方法供您参考,如果您在MYSQL查询结果处理方面遇到过问题,不妨一看。表A
+-------------------+
|id |user |info |
|1 |u1 |991 |
|3 |u3 |113 |
+-------------------+表B
+-------------------+
|id |user |pw |pw2 |
|1 |u1 |p1 |p12 |
|2 |u2 |p2 |p22 |
|3 |u3 |p3 |p32 |
+-------------------+
能不能通过语句创建一个新表变成以下结果。剔除在表B里有。但是表A里没有的ID.并合并同ID的数据呢?当然是可以的。
+-------------------------+
|id |user |pw1 |pw2 |info |
|1 |u1 |p1 |p12 |991 |
|3 |u3 |p3 |p33 |113 |
+-------------------------+
两表的MYSQL查询结果插入新表的实现的语句
以上就是两表的MYSQL查询结果插入新表的方法介绍。
MySQL:如何将两张表的查询结果插入到一张新的表
下面为您介绍的方法实现的是两张表的查询结果插入一张新表,该方法供您参考,如果您在MYSQL查询结果处理方面遇到过问题,不妨一看。表A
+-------------------+
|id |user |info |
|1 |u1 |991 |
|3 |u3 |113 |
+-------------------+表B
+-------------------+
|id |user |pw |pw2 |
|1 |u1 |p1 |p12 |
|2 |u2 |p2 |p22 |
|3 |u3 |p3 |p32 |
+-------------------+
能不能通过语句创建一个新表变成以下结果。剔除在表B里有。但是表A里没有的ID.并合并同ID的数据呢?当然是可以的。
+-------------------------+
|id |user |pw1 |pw2 |info |
|1 |u1 |p1 |p12 |991 |
|3 |u3 |p3 |p33 |113 |
+-------------------------+
两表的MYSQL查询结果插入新表的实现的语句
以上就是两表的MYSQL查询结果插入新表的方法介绍。
c#能不能连接mysql 在一个表中查询然后把查询到的写入另一张表中
可以从一个表中复制所有的列插入到另一个已存在的表中:
INSERT INTO table2
SELECT * FROM table1;
或者我们可以只复制希望的列插入到另一个已存在的表中:
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;
c#能不能连接mysql 在一个表中查询然后把查询到的写入另一张表中
可以从一个表中复制所有的列插入到另一个已存在的表中:
INSERT INTO table2
SELECT * FROM table1;
或者我们可以只复制希望的列插入到另一个已存在的表中:
INSERT INTO table2
(column_name(s))
SELECT column_name(s)
FROM table1;
MySQL数据库怎样把一个表的数据插入到另一个表
代码如下:
<?php
header("Content-type:text/html;charset=utf-8");
$conn = mysql_connect("localhost","root","");
mysql_select_db('nnd',$conn);
mysql_select_db('ahjk',$conn);
mysql_query("set names utf8");
$sql = mysql_query("select content,partid from phpcms_c_disease order by contentid desc limit
//我这里是查询出表的数据 然后循环插入
$sql1= "INSERT INTO `nnd`.`demo`(content,parid) VALUES";
while($row = mysql_fetch_assoc($sql)){
$sql1.="('$row[content]','$row[partid]'),";
}
$sql1.=")";
$sql2 .= str_replace(",)",";",$sql1);
mysql_query($sql2);
?>
MySQL数据库怎样把一个表的数据插入到另一个表
代码如下:
<?php
header("Content-type:text/html;charset=utf-8");
$conn = mysql_connect("localhost","root","");
mysql_select_db('nnd',$conn);
mysql_select_db('ahjk',$conn);
mysql_query("set names utf8");
$sql = mysql_query("select content,partid from phpcms_c_disease order by contentid desc limit
//我这里是查询出表的数据 然后循环插入
$sql1= "INSERT INTO `nnd`.`demo`(content,parid) VALUES";
while($row = mysql_fetch_assoc($sql)){
$sql1.="('$row[content]','$row[partid]'),";
}
$sql1.=")";
$sql2 .= str_replace(",)",";",$sql1);
mysql_query($sql2);
?>
sql语句 怎么从一张表中查询数据插入到另一张表中
sql语句从一张表中查询数据插入到另一张表中的方法如下:
1、select * into destTbl from srcTbl。
2、insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl。
以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:
第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。
第二句(insert into select from)要求目标表(destTbl)存在,由于目标表已经存在,所以我们除了插入源表(srcTbl)的字段外,还可以插入常量。
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。sql 语句就是对数据库进行操作的一种语言。
常见语句:
1、更新:update table1 set field1=value1 where 范围。
2、查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)。
3、排序:select * from table1 order by field1,field2 [desc]。
4、求和:select sum(field1) as sumvalue from table1。
5、平均:select avg(field1) as avgvalue from table1。
6、最大:select max(field1) as maxvalue from table1。
7、最小:select min(field1) as minvalue from table1[searator]。
sql语句 怎么从一张表中查询数据插入到另一张表中
sql语句从一张表中查询数据插入到另一张表中的方法如下:
1、select * into destTbl from srcTbl。
2、insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl。
以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:
第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。
第二句(insert into select from)要求目标表(destTbl)存在,由于目标表已经存在,所以我们除了插入源表(srcTbl)的字段外,还可以插入常量。
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。sql 语句就是对数据库进行操作的一种语言。
常见语句:
1、更新:update table1 set field1=value1 where 范围。
2、查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)。
3、排序:select * from table1 order by field1,field2 [desc]。
4、求和:select sum(field1) as sumvalue from table1。
5、平均:select avg(field1) as avgvalue from table1。
6、最大:select max(field1) as maxvalue from table1。
7、最小:select min(field1) as minvalue from table1[searator]。
将一个表的查询结果插入到另一个表中(oracle、mysql、sql 、GP)
首先你查询后结果的字段与你要插入的表的字段的类型要一致,假入表 1,表2
将表2中查询出的结果插入到表1中,SQL如下(ORACLE):
INSERT INTO 表1(字段1,字段2,字段n)
select 表2.字段1,表2.字段2,表2.字段n from 表2
这样就可以满足你的要求