有没有懒一点的SQL语句

jflanmay 2012-12-31 05:47:02
从一个表插数据到另一个表。比如用select ta.* into tb这样的语句。

现在是:ta里面有若干字段,tb里有大部分字段与其相同,小部分不同。

有什么简单的办法,可以把ta里相同的字段插入tb,不同的字段,我爱给哪几个赋值就赋值。

最好是不用把各个字段列出来,那样太累了。



...全文
232 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
韩誉 2013-01-05
  • 打赏
  • 举报
回复
如果逻辑关系复杂 还是考虑外部软件实现逻辑进行迁移数据吧
叶子 2013-01-05
  • 打赏
  • 举报
回复
直接对应字段是最简单的方式了
haitao 2013-01-05
  • 打赏
  • 举报
回复
自己做一个sql代码生成辅助工具
  • 打赏
  • 举报
回复
你太能想了,呵呵@!
Walton_Yan 2013-01-02
  • 打赏
  • 举报
回复
好像没有哦哦
炮子枪 2013-01-02
  • 打赏
  • 举报
回复
相同字段比对,然后不同的提示输入即可,代码写起来还是比较简单的
發糞塗牆 2013-01-02
  • 打赏
  • 举报
回复
动态显式表的列:
DECLARE @s NVARCHAR(4000)
SET @s = ''
SELECT  @s = @s + ',' + QUOTENAME(name)
FROM    syscolumns
WHERE   id = OBJECT_ID('表名')
        AND name NOT IN ( '不希望显式的列' )
SET @s = STUFF(@s, 1, 1, '')
EXEC('select '+@s+' from 表名  ')
szm341 2012-12-31
  • 打赏
  • 举报
回复

--A表的全部字段
select stuff((select ','+name from sys.columns where object_id=object_id('A') for xml path('')),1,1,'')
--AB两表相同的字段名
select a.name
(select name from sys.columns where object_id=object_id('A'))a
inner join 
(select name from sys.columns where object_id=object_id('B'))b
on a.name=b.name

--AB两表不同的字段名,将AB俩表对换是另一种BA不同的字段
select name from sys.columns where object_id=object_id('A')
and name not in 
(select name from sys.columns where object_id=object_id('B')
知识青年 2012-12-31
  • 打赏
  • 举报
回复
宁愿发帖,也不愿打几个字段。。 可惜没有捷径

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧