如何用sql语句,将表2中与表1中含有相同字符行,中的数据插入表1中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用sql语句,将表2中与表1中含有相同字符行,中的数据插入表1中相关的知识,希望对你有一定的参考价值。
表1
a b c
yy 4
k 9
xx 7
表2
a c
k 65
jx 8
xx 5
最后的结果是这样的
表1
a b c
yy 4
k 9 65
xx 7 5
直接插入表1中
建表插入数据:
create table table1(a varchar(10),
b int,
c int);
create table table2
(a varchar(10),
c int);
insert into table1 values (\'yy\',4,null);
insert into table1 values (\'k\',9,null);
insert into table1 values (\'xx\',7,null);
insert into table2 values (\'k\',65);
insert into table2 values (\'jx\',8);
insert into table2 values (\'xx\',5);
mysql下执行:
mysql下执行后结果:
sqlserver下执行:
update table1 set c=b.c from table1 a inner join table2 b on a.a=b.asqlserver下执行后结果:
以后提问时说明用的什么数据库,不同数据库语法都不同的。
参考技术A 表结构 能列出来吗?如何用shell 脚本实现将一个文件某些行写入到另一个临时文件中
主要实现如下几步:
1.将字符串”delete from table_name;" 写入到临时文件“/tmp/tmpscript.sql"
2. 将已知文件”/file1/file2/default.sql"中含有字符串“insert into table name”的行写入到临时文件“/tmp/tmpscript.sql"中
3. 一旦文件写完,就调用命令“dbIsql –f /tmp/tmpscript.sql”执行
4. 删除临时文件“/tmp/tmpscript.sql"
table_name= #指定表名
echo "delete from $table_name;" > /tmp/tmpscript.sql
grep "insert into $table_name" /file1/file2/default.sq >> /tmp/tmpscript.sql
dbIsql -f /tmp/tmpscript.sql
rm -f /tmp/tmpscript.sql
exit 0
#end追问
What is the difference between the following two shell statement?
grep "insert into $table_name" /file1/file2/default.sq >> /tmp/tmpscript.sql
grep "insert into $table_name" /file1/file2/default.sq | tee -a /tmp/tmpscript.sql
| tee -a 表示将信息输出到标准输出(终端屏幕)的同时,也写入后面的文件中(其中,-a表示追加)
以上是关于如何用sql语句,将表2中与表1中含有相同字符行,中的数据插入表1中的主要内容,如果未能解决你的问题,请参考以下文章