hur.cn - 华软网

 热门搜索

关于powerbuilder中动态sql语句的问题,请教各位同仁!!

  作者:未知    来源:网络    更新时间:2019/1/25
现有一salary表字段分别是 id,name,sa_98,sa_99,sa_00,sa_01,sa_02 其中(sa_98,sa_99,sa_00,sa_01,sa_02 )各字段分别寄存的是1998,1999,2000,2001,2002这些年各个职工的工资记录例如
   id  name   sa_98 sa_99  sa_00  sa_01  sa_02 
   01  小姚   600    700    800    900   1000
   02  小李   500    600    700    800   900
   03  小王   300    500    600    700   800

,现要求用用户输入的年度来判断应取那一年度的数据,不知道PB里是否有像VF中的宏替换的方法把字符型变量转换为字段名?同时要将1998至2002这些年工资数据汇总插入到表total表中,total表的结构(year,total) 用动态SQL应该怎么写?望能安这个要求写个例子,谢谢 
  实现后total内容
  year    total
  1998    ****
  1999    ****
  2000    ****
  2001    ****
  2002    ****
------华软网友回答------
这个很好实现了,根据数据的年份,判断该取那个字段的值计算,然后动态组成sql动态执行即可。
------华软网友回复------
表设计大有问题
------华软网友回复------
myvicy(热情肠的人)楼主  能把那详细代码写给我参照一下吗?
------华软网友回复------
if st_1.text="1998" then
    select sum(sa_98) into :total from salary
end if

insert into total(year,total) values("1998",:total)
你最好先判断一下是否已经插入了数据如果插入了就更新,否则插入。

------华软网友回复------
这个不仅是动态sql,还存留行转列的问题,需要中间表来过渡的
------华软网友回复------
不怕烦就union*4
------华软网友回复------
myvicy(热情肠的人)楼主 
  你的那种方法太烦了,能否通过动态sql语句实现呢,谢谢!
------华软网友回复------
AFIC(AFIC) 楼主,能否通过动态的sql 和循环来实现 ,请见教!!!
------华软网友回复------
表结果有严重问题,建议lz再去学一下数据库原理

------华软网友回复------
我知道表结构有问题,我只是想用动态SQL语句如何写此程序?      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。