如果有两个表,
一个表中有两个字段(宽,高)整型
别一个字段有一个规格 字符型
如何将一个表中的宽,高加上其它组合成一个字符型字段插入到另一张表中
例如
T1中的记录为宽=300,高=600
插入到T2中
T2的记录中规格=300*600
请大家指教
一个表中有两个字段(宽,高)整型
别一个字段有一个规格 字符型
如何将一个表中的宽,高加上其它组合成一个字符型字段插入到另一张表中
例如
T1中的记录为宽=300,高=600
插入到T2中
T2的记录中规格=300*600
请大家指教
调试欢乐多
首先比如你第一个表中字段名称为:name,width,height
第二个表中的字段名称为:name,size
前提是保证表(1)中一个name对应表(2)中相应name!
可以先定义3个变量
n:string;//name
a,b:integer;//width,height
c:string;//size
//从表(1)中取出值
with adoquery1 do
begin
sql.clear;
sql.add('select * from table1 where name=:name1');
parameters.parambyname('name1').value=:'k';//取出名字为k的记录的长,宽
open;
name:=fieldbyname('name').asstring;
a:=fieldbyname('width').asinteger;
b:=fieldbyname('height').asinteger;
c:=inttostr(a)+'*'+inttostr(b);//得到规格c的值
end;//把C的值插入表(2)进去
with adoquery1 do
begin
sql.clear;
sql.add('insert into table2(name,size)values(:name,:size)');
parameters.parambyname('name').value=:n;
parameters.parambyname('size').value=:c;
execsql;
end;
上面的语句是我临时写的,没在delphi中测试
有问题吗?
A(AID,Width,Height) B(BID,Result)
insert into B(BID,Result) select AID,Width*Height from A
谢谢:你的方法应该没有问题,但因为我有N条记录插入,有时量很大,如晨通过循环来依次插入效率太低,所以我想要的是一个SQL语句,执行一次就能搞掂的方法,麻烦你想起来指教我
谢谢
to:hatum
如果RESULT也是数值型,如象是对的,但我的RESULT字段是字符型,我试一试
谢谢
insert into B(BID,Result) select AID,compact(compact(convert(Width), '*'), convert(Height)) from A;至于是什么函数,就要看是什么数据库了。。