分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
数据库1: unca
数据歼谨衫库2: unca1
都互相有
accwd 主键为: A
dattdf 主键为: B
iufer 主氏腔键为: C
floien 主键晌拦为: D
dengdq 主键为: E
等5个表 每个表的属性字段类型都一样
数据库1 有5万多条数据
数据库2 有7万多条数据
现在想 把2个数据库的数据合并
如果出现主键字段相同数据 就自动将那个重复的数据其中1条 主键号加上 自己设定的 2 这个数字
就是说 如果
accwd 表 字段:A G D F
5 77 66 88
5 44 33 77
我想要它遇到这情况后 在其中1条数据 的主键 后面加上2
如下 第一条加了2
accwd 表 字段:A G D F
52 77 66 88
5 44 33 77
这个语法该怎写呢?大家帮下~ 不知道这样解释高手是否能明白~:)
解析:
一句话做到是不太可能了,我想到的是
先用exists,把一个库中与另一库内重复的纪录的主键改变
然后用select into...合并表
具体不知道你用什么数据库,只大致写一下:
1,update db1.accwd t1 set a = a+'2' where exist select * from db2.accwd t2 where t1.a = t2.a;
2, insert into db1.accwd select from select * from db2.accwd;
Ⅱ 在SQL中,合并多个表中的数据有哪3种方法
有左连left
右连
right
和内敛
innerunion
是纵向显示两个表记录还可以用笛卡尔积
应该是ABC
Ⅲ SQL求两张表如何合并。
先用左连接将1表完全查出,再用右连接将2表完全查出,最后合并结果
SELECT t1.id AS `编号`,t1.`name` AS `名称`,t1.score AS `科目一分数`,CASE WHEN t2.score IS NULL THEN 0 ELSE t2.score END AS `科目二分数`
FROM t1 LEFT JOIN t2 ON t1.id= t2.id
UNION
SELECT t2.id AS `编号`,t2.`name` AS `名称`,CASE WHEN t1.score IS NULL THEN 0 ELSE t1.score END AS `科目一分数`,t2.score AS `科目二分数`
FROM t1 RIGHT JOIN t2 ON t1.id= t2.id;
Ⅳ sql server 语句如何将3个表合并成一个表
先说一下我的思路:
首选你把表1,表2,表3中的数据都合并在一起表中,使用union all合并在一起。先不要管姓名是否会重复。
但是在执行合并的时候,需要对每一个待合并的数据,打上一个标签,代表这个是哪个表中来的数据,这个标签最后用于区分同一个人的不同的成绩是分别是多少,不能因为合并在一起后,就把同一个人的三项成绩给搞混了。
合并后的数据进行行转列的操作。
具体的SQL语句如下图所示:
Ⅳ SQL怎么合并表
select * into 新表名 from (select * from T1 union all select * from T2)
这个语句可以实现将合并的数据追加到一个新表中。
不合并重复数据 select * from T1 union all select * from T2
合并重复数据 select * from T1 union select * from T2
两个表,表1 表2
如果要将 表1的数据并入表2用以下语句即可
insert into 表2(字段1,字段2) select 字段1,字段2 from b1
注意,必须把字段名全部写清楚,而且不允许把自动编号进去写进去,要合并自动编号字段必须重写一个算法一条一条记录地加进去
1 insert into b1 select * from b2
2 select * into newtable from (select * from b1 union all select * from b2)
Ⅵ 数据库 SQL 对于不同表的合并
用union连接2个表,这样写
SELECT * into c
from (select *,"n/a" as "gender " from a union
select user_id ,name,"喊逗n/郑渗卖喊凳a" as "age",gender from b) d;
Ⅶ SQL 表如何两张表合并成一张 !!
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
SQL UNION 语法
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
SQL UNION ALL 语法
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。
Ⅷ SQL 两张表合并 (两张表的列都相同)
可以参考下面的方法:
1、第一种,用一张临时表,把所有数据都放在一张表里
INSERT INTO QunList SELECT * FROM QunList89,90,91,92;
再在QunList中查询
2、第二种,用 UNION ALL方式查询
SELECT * FROM QunList89
UNION ALL
SELECT * FROM QunList90;
(8)sql不同表格合并扩展阅读:
SQL参考语句
删除表
drop table tabname--这是将表连同表中信息一起删除但是日志文件中会有记录
删除信息
delete from table_name-这是将表中信息删除但是会保留这个表
增加列
Alter table table_name add column_name column_type [default 默认值]--在表中增加一列,[]内的内容为可选项
Ⅸ sql合并两张表(表字段不一致)到一张新表中
建表背景:有2张表,表A,表B(表A数据较多,表B字段较全,2张表的name字段数据有关联)
目的:把表A表B中的指定字段导入到表C
第一步,先创建好表C
第二步,把表A的数据合并到表C
insert into 表C (id,name,department,datetime) select id,name,department,datetime from 表A
第三步,把表B的数据合并到表C
update 表C as c,表B as b set c.image_url=b.image_url,c.face_image_id=b.face_image_id where c.name=b.name