社区
数据库(包含打印,安装,报表)
帖子详情
如果一个数据库中含有两个相同的表如何动态的合并
vbqing
2001-08-08 05:38:21
我现在做一个宿舍管理系统,在新生资料输入时候遇到困难,我要把每年的新入学的学生让管理员输入原来的数据库"新生资料"中,原来的数据库中还包含一个"老生资料"表,两个表的字段完全一样,但由于要求建立数据库的时候不能够合并,但是当用户需要查询所有学生的资料的时候必须把两个表的内容并起来,关于这点我无法实现,请高手指点
我的email:qing19ok@sina.com
...全文
195
4
打赏
收藏
如果一个数据库中含有两个相同的表如何动态的合并
我现在做一个宿舍管理系统,在新生资料输入时候遇到困难,我要把每年的新入学的学生让管理员输入原来的数据库"新生资料"中,原来的数据库中还包含一个"老生资料"表,两个表的字段完全一样,但由于要求建立数据库的时候不能够合并,但是当用户需要查询所有学生的资料的时候必须把两个表的内容并起来,关于这点我无法实现,请高手指点 我的email:qing19ok@sina.com
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tyd163xx
2001-08-08
打赏
举报
回复
对啊,用union就可以了啊
一川烟草123
2001-08-08
打赏
举报
回复
同意斑竹意見
playyuer
2001-08-08
打赏
举报
回复
select * from new
union all
select * from old
DTWUJP
2001-08-08
打赏
举报
回复
使用 UNION 运算符组合多个结果
UNION 运算符使您得以将两个或多个 SELECT 语句的结果组合成一个结果集。使用 UNION 组合的结果集都必须具有相同的结构。而且它们的列数必须相同,并且相应的结果集列的数据类型必须兼容。有关更多信息,请参见 UNION 运算符使用指南。
UNION 的指定方式如下:
select_statement UNION [ALL] select_statement
例如,Table1 和 Table2 具有相同的两列结构。
Table1 Table2
ColumnA ColumnB ColumnC ColumnD
char(4) int char(4) int
------- --- ------- ---
abc 1 ghi 3
def 2 jkl 4
ghi 3 mno 5
下面的查询在这两个表之间创建 UNION 运算:
SELECT * FROM Table1
UNION
SELECT * FROM Table2
下面是结果集:
ColumnA ColumnB
------- --------
abc 1
def 2
ghi 3
jkl 4
mno 5
UNION 的结果集列名与 UNION 运算符中第一个 SELECT 语句的结果集中的列名相同。另一个 SELECT 语句的结果集列名将被忽略。
默认情况下,UNION 运算符从结果集中删除重复的行。如果使用 ALL 关键字,那么结果中将包含所有行并且将不删除重复的行。
UNION 运算的准确结果取决于安装过程中选择的排序规则和 ORDER BY 子句。有关不同排序规则的效果的更多信息,请参见 SQL Server 排序规则基础知识。
Transact-SQL 语句中可以出现任意数目的 UNION 运算符,例如:
SELECT * FROM TableA
UNION
SELECT * FROM TableB
UNION
SELECT * FROM TableC
UNION
SELECT * FROM TableD
默认情况下,Microsoft® SQL Server™ 2000 从左到右对包含 UNION 运算符的语句进行取值。使用圆括号指定求值的顺序。例如,以下语句并不等价:
/* First statement. */
SELECT * FROM TableA
UNION ALL
( SELECT * FROM TableB
UNION
SELECT * FROM TableC
)
GO
/* Second statement. */
(SELECT * FROM TableA
UNION ALL
SELECT * FROM TableB
)
UNION
SELECT * FROM TableC)
GO
在第一个语句中,将消除 TableB 和 TableC 之间的联合中的重复行。而在该集与 TableA 之间的并集中,不消除重复行。在第二个语句中,TableA 和 TableB 之间的联合中包含重复行,但在随后与 TableC 的联合中将消除。ALL 关键字对此表达式的最终结果没有影响。
如果使用 UNION 运算符,那么单独的 SELECT 语句不能包含其自己的 ORDER BY 或 COMPUTE 子句。只能在最后一个 SELECT 语句的后面使用一个 ORDER BY 或 COMPUTE 子句;该子句适用于最终的组合结果集。GROUP BY 和 HAVING 子句只能在单独的 SELECT 语句中指定。
你的可用
select * from new union select * from old
算法 链
表
合并
两个
有序链
表
迭代法是最直观的方法,通过比较
两个
链
表
的当前节点值,较小的节点被添加到结果链
表
中
,然后移动相应链
表
的指针。
合并
两个
有序链
表
意味着将
两个
已排序的链
表
合并
成
一个
新的有序链
表
,新链
表
中
的元素也应保持原有的排序关系。
一个
有效的方法是使用优先队列(最小堆),每次取出最小的节点加入结果链
表
,然后将该节点的下
一个
节点重新加入队列。递归法利用了递归的思想,每次选择
两个
链
表
中
较小的节点作为新链
表
的一部分,并将该节点的下
一个
指针指向其余部分的
合并
结果。通过上述方法和技巧的学习与实践,可以有效地提升处理链
表
相关问题的能力。
MySQL数据
表
合并
(两
表
字段
相同
)以及数据去重
数据去重 现有
两个
表
test_01 test_02 其
中
test_01有重复数据 统计重复数据 select count(*) as repeat_count,name from test_01 group by name having repeat_count > 1; 使用DISTINCT关键字过滤重复数据 select distinct name,ag...
关于mysql
合并
表
的详细浅谈
mysql创建
合并
表
和分区
表
有点相似,他是mysql 的一种特性,可以把多个结构
相同
的myisam
表
合并
为
一个
虚
表
,存续引擎必须是merge,当从
合并
表
中
查询就像从子
表
中
查询一样,和视图有写相似,当创建
合并
表
时也有自己的frm和mrg 文件。
合并
表
比非
合并
表
含有
更多的文件描述符,他的访问其实是打开了子
表
,所以缓存
中
的数据可能对应有多个文件描述符,在
合并
表
中
虽然有可能有
相同
的值,但是只要查询找到了第
一个
想要的值,查询就会停止。本篇文章是对mysql
中
的
合并
表
进行了详细的分析介绍,需要的朋友参考下。
Access
中
合并
两张
表
为一张
表
前不久朋友使用access
数据库
时候遇到的问题,利用SQL语句轻松解决之。 问题简化如下: 已知
表
A结构 ================================= ID product price provider =================================
表
B结构 ==================...
mysql查询和修改指定
数据库
中
所有
表
中
包含的某个字段
前奏 最近遇到
一个
业务场景,就是在某个特定的操作
中
,需要把
两个
用户信息
合并
成
一个
用户信息,刚遇到的时候没思路,后来理了半天,稍微有点思路。
一个
废弃的思路 1、先更改user
表
,把
两个
用户信息
合并
成
一个
,这个简单 2、查询当前库
中
所有包含userId的
表
3、把旧的userId做条件,来对真个库包含userID的
表
进行数据修改 吐槽自己:很遗憾的这个思路最后并没有走通,因为每个用户涉及...
数据库(包含打印,安装,报表)
1,217
社区成员
55,952
社区内容
发帖
与我相关
我的任务
数据库(包含打印,安装,报表)
VB 数据库(包含打印,安装,报表)
复制链接
扫一扫
分享
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章