读书人

求一条复制插入话语

发布时间: 2013-04-26 16:27:53 作者: rapoo

求一条复制插入语句
两张表A , B
都有字段ID
现在要从A表取最大ID值插入到B表ID字段中 (如果A表为空,则不插入)
我之前是这样写的

insert into A(ID) select max(ID) from B

但是这个语句没考虑到A表空的问题,当A表为空或者MAX(ID)为NULL的时候,上述语句也会插入NULL到B表

现在我要排除max(ID)为空的时候

用一条语句怎么写?
SQL 复制,插入
[解决办法]
到底是A-》B 还是B-》A啊
insert into A(ID) select max(ID) from B where id<>''
[解决办法]
try this,

if (select max(ID) from B) is not null
begin
insert into A(ID) select max(ID) from B
end

[解决办法]
如果id是数值的话
insert into A(ID) select max(ID) from B where id is not null
[解决办法]
insert into A(ID) select max(ID) from B where id is not null

这样?

另外你的题目中表名好像反了


[解决办法]
select top 1 id from b order by id desc
这个也试试。
[解决办法]
DECLARE @id INT

SELECT @id=MAX(ID) FROM A

IF @id IS NULL

RETURN

ELSE

INSERT INTO B SELECT @id

[解决办法]
inert into B(id) select id from A where id is not null

读书人网 >SQL Server

热点推荐