数据库表对表操作之复制表数据

数据库表对表操作之复制表数据


个人网站:友书小说网(http://laiyoushu.com)绿色纯净无广告,欢迎大家前来看小说


一:目标表存在:

语法:insert 目标表 select 源表要复制的字段 from 源表
列:INSERT members_123 SELECT id,name,status,intro,position,lv,QQ FROM dbo.members
注:
members_123:目标表
members:数据源表
id,name,status,intro,position,lv...数据源表所有字段
也可以写成这样:INSERT members_123 SELECT * FROM dbo.members
用*代替所有字段,但是这种写法不规范
二:目标表不存在:
语法:select 需要复制的字段名 into 目标表 from 数据源表
列:SELECT * INTO members_1 FROM dbo.members
注:
members_1:目标表
members:数据源表


数据库表对表操作之大数据按需求将所需字段批量插入目标表


语法:insert into 目标表(需插入的所有字段) select (需插入的源字段) from 数据源表
注:
该语句可分为上下两句,分别是:
插  入  目  标  表:insert into 目标表(需插入的所有字段)
从数据源表提取数据:select (需插入的源字段) from 数据源表
写完后可先执行后面那句看能否从数据源表查出所需字段,提取的数据也不一定是完全要从源表提取也可以自己重新set
列:
INSERT INTO dbo.up_budget_item
( key_id ,budget_plan_id ,item_code ,item_desc ,value_source_type ,value_source ,value_methods ,fix_year ,fix_month ,effect_total_type_code ,display_order ,create_by ,create_dt ,last_update_by ,last_update_dt)
SELECT NEWID(),'e7c66dc0-3c7b-48fd-b912-ba6d89523d7a','ys_' + payitem_code,payitem_name_cn,'1001','','1000',NULL,NULL,'1001',display_order,'admin',GETDATE(),NULL,NULL FROM dbo.payitem
注:
newid,'e7c66dc0-3c7b-48fd-b912-ba6d89523d7a','1001'等数据是自己写死了的固定值,而不是从源表中提取的
'ys_' + payitem_code,:是将从原表提取出来的数据进行了拼接操作,批量的将所有从原表提取出来的payitem_code该数据前加了'ys_'






数据集拼接:


关键字:union 或 union all
区别:
union:若两数据集中有两条数据完全一致系统则会只保留一条数据,会自动去重复
union all:就算两数据集中有多条数据重复,系统也会将所有重复的数据保存在合并后的数据集中
列:
UNION ALL:
    SELECT 'a001' AS emp_code , '张三' AS chn_name UNION ALL
   SELECT 'a001' AS emp_code , '张三' AS chn_name
   结果:
 emp_code chn_name
   a001   张三
   a001   张三
UNION:
SELECT 'a001' AS emp_code , '张三' AS chn_name UNION 
        SELECT 'a001' AS emp_code , '张三' AS chn_name
结果:
emp_code chn_name
   a001   张三
注:还可以将拼接的结果集放入到临时表中,操作如下:
SELECT 'ys_ex_001' as payitem_code,'一次性忠诚奖' as payitem_name_cn,63 as display_order INTO #table1 union all 
select 'ys_ex_002' as payitem_code,'长期激励项' as payitem_name_cn,64 as display_order union all 
select 'ys_ex_003' as payitem_code,'短期激励项' as payitem_name_cn,65 as display_order union all 
select 'ys_ex_004' as payitem_code,'经济补偿金' as payitem_name_cn,66 as display_order union all 
银行表对表数据迁移架构是指将一个数据库数据迁移到另一个中的过程。在银行的数据迁移中,通常会使用以下几种架构: 1. 批量导入:这种架构适用于需要一次性将整个数据迁移到另一个中的情况。首先,通过数据抽取工具将源中的数据导出到一个文件中,然后使用加载工具将文件中的数据批量导入到目标中。这种方法适用于数据量较大且需要离线处理的场景。 2. 实时同步:在某些情况下,需要将源中的数据实时同步到目标中,以保持数据的一致性。在这种架构中,可以使用数据库复制或者触发器等机制来实现数据的实时同步。这样,当源中的数据发生变化时,目标中的数据也会即时更新。 3. 增量迁移:当源和目标之间的数据差异较小时,可以采用增量迁移的方式。这种方法通过记录源和目标之间的差异,并定期将差异部分迁移到目标中。增量迁移可以减少数据处理的压力,并提高迁移效率。 4. 数据转换和清洗:在进行数据迁移时,通常需要对数据进行转换和清洗,以使数据符合目标的结构和要求。这包括数据类型转换、数据格式化、数据验证等操作。可以使用ETL(Extract-Transform-Load)工具或者自定义脚本来完成这些操作。 需要注意的是,银行表对表数据迁移涉及到敏感的金融数据,因此在设计架构和选择工具时,需要考虑数据的安全性和完整性,并确保迁移过程的可追溯性和可恢复性。此外,对于大规模的数据迁移,还需要考虑性能优化和并发控制等因素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纪寻川

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值