sql语句问题。求语句,求帮忙

问题描述

sql语句问题。求语句,求帮忙

有A B两张表里面的字段列名完全一致只有数据不一致。。现在要把A B两张中不同数据插入到A表中。怎么做

解决方案

insert语句后面加where约束呗

解决方案二:

求差集,oracle提供差集函数(minus),但是mysql就没有,所以得根据数据库区别对待。
http://www.cnblogs.com/shengtianlong/archive/2010/12/03/1895346.html

解决方案三:

提供两种思路: 个人建议创建视图要好一些,因为直接插入B中的数据到A表中可能会出现主键冲突
方法1 : insert into A(field1,field2,....) select field1, field2 , ... from B where fieldx not in ( select fieldx from A ) ;

/* 说明: field1,field2, fieldx 代表A、B两张表中相应的字段*/
方法2 : 建议创建一个视图 view eg: create view as select * from A union select * from B

解决方案四:

假设有三个字段,field1是主键:
insert into table1(field1, field2, field3) select field1, field2, field3 from table2 t2 where not exists (select 1 from table1 t1 where t1.field1=t2.filed1) ;

如果没有主键,就会比较麻烦一些:
insert into table1(field1, field2, field3) select field1, field2, field3 from table2 t2 where not exists (select 1 from table1 t1 where t1.field1=t2.filed1 and t1.field2=t2.filed2 and t1.field3=t2.filed3) ;

时间: 2024-11-02 16:25:38

sql语句问题。求语句,求帮忙的相关文章

sql语句问题求大神帮忙帮忙

问题描述 sql语句问题求大神帮忙帮忙 select count(*) from (SELECT HY_GUID,COUNT(*) number FROM dbo.BI_GYDD GROUP BY HY_GUID) a where number=1 select count(*) from (SELECT HY_GUID,COUNT(*) number FROM dbo.BI_GYDD GROUP BY HY_GUID) a where number=2 select count(*) from

两张表中添加一天一条记录 求大神 帮忙看下 sql 语句该如何去写

问题描述 求大神帮忙解决一个问题比如说有三张表A,B,C三张表,我想将A中的某条数据点击添加按钮的时候同时加到B和C两张表,如何添加?A和B是一对多关系B和C是一对多关系sql语句该如何去写 解决方案 解决方案二:分开逻辑写呗.解决方案三:用触发器可以吗解决方案四:触发器没经常用,的忘记中写了解决方案五:还有其他办法吗

sql server语句问题-sql server数据库语句问题 求大神帮忙解释

问题描述 sql server数据库语句问题 求大神帮忙解释 select * from Stock where sxrq<'CONVERT(varchar(10), GETDATE(), 23)' sxrq是varchar(10)是表中的日期,格式为xxxx-xx-xx,想用getdate()方法获取当前日期,并且转换成了varchar(10)格式也为xxxx-xx-xx,但执行时sxrq<'CONVERT(varchar(10), GETDATE(), 23)'好像没起到作用,求大神解释.

高分悬赏 请大神指导-超级长得SQL语句,看晕你的头,求大神帮忙看一下这段SQL错在哪里。

问题描述 超级长得SQL语句,看晕你的头,求大神帮忙看一下这段SQL错在哪里. DECLARE @SQL VARCHAR(8000) SET @SQL ='SELECT A.POINT, A.WZ, A.LC, A.PL1, A.PL2, A.XS1, CASE WHEN ISNULL(A.ZDZS,'''') <> '''' THEN A.ZDZS ELSE 0 END AS ZDZS, CASE WHEN ISNULL(A.PJZ,'''') <> '''' THEN A.PJ

数据-sql语句出错,求大神帮忙解答

问题描述 sql语句出错,求大神帮忙解答 CREATE PROCEDURE test() BEGIN DECLARE fid int; DECLARE days int DEFAULT 1; DECLARE s int default 0; DECLARE company_code VARCHAR; DECLARE cursor_company CURSOR FOR SELECT company FROM test WHERE status = 3; DECLARE CONTINUE HANDL

sql语句转换成hql求大神解决

问题描述 sql语句转换成hql求大神解决 具体sql语句如下,变成hql语句,请高手知道一下.select * from plan_run r where r.id in(select t.plan_run_waishi_user_id from PLAN_RUN_OA_USER t where t.oa_user_id= ?) 解决方案 from 实体类1 p where p.id in ( select i.id from 实体类2 i where i.useId = ? )注意hql里面

request-Request();Attribute()这都是什么意思?求大神帮忙解析下下边语句,新手求学习

问题描述 Request():Attribute()这都是什么意思?求大神帮忙解析下下边语句,新手求学习 Request():Attribute()这都是什么意思?求大神帮忙解析下下边语句,新手求学习.跪求大神给解释一下,详细点,并且给推荐个学习方向.跪谢 action: super.getRequest().setAttribute("sCKTGLList", sCKTGLList); super.getRequest().setAttribute("iSOZGRZSZLi

语句问题-SQL语句的问题,求高手帮助

问题描述 SQL语句的问题,求高手帮助 1C rec_id No name001 Y 101 材料1002 Y101 材料1003 Y101 材料1004 Y102 材料2005 Y102 材料2006 Y103 材料3007 Y104 材料4我现在想得到一下结果:rec_id No name003 Y 101 材料1005 Y102 材料2006 Y103 材料3007 Y104 材料4请问如何写SQL语句 解决方案 select max(rec_id)No name from 表名 grou

sql语句-SQL 插入语句 新手求指导求教育

问题描述 SQL 插入语句 新手求指导求教育 INSERT INTO U_USER VALUES( 1,小严,严,,,,,,,,,,,,,);后面的没有写就出现前三个字段列名无效.为什么? 解决方案 为varchar类型的列赋值需要用单引号引起来(1,'小严','严',,,,,,,,,,,)