类型:delphi+sqlserver2000我现时有一个表employee,里面有三个字段:employee_id,employee_name,employee_workage
表内容如下:
employee_id  employee_name employee_workage
1              李明           1.5
2              梁权            0
3              谢亭           11
4              陈娟            6
5              黄红           20在按钮button1中实现如果employee_workage字段查找出来的记录值少于1那么要在dbgrid中新增一列holiday并赋值为0;
如果employee_workage的值大于1少于10,那么holiday的值为5;
如果employee_workage的值大于等于10而少于20,那么holiday的值为10,
如果employee_workage的值大于等于20以上的,那么holiday的值为20
即最终实现为结果为下:employee_id  employee_name employee_workage  holiday
1              李明           1.5               5
2              梁权            0                0
3              谢亭           11                10
4              陈娟            6                5
5              黄红           20                15=====================================
procedure TForm_main.ToolButton1Click(Sender: TObject);
var
sqlstring:string;
i:integer;begin
sqlstring:='select * into #table1 from employee' ;
adoquery1.SQL.Clear;
adoquery1.SQL.add(sqlstring);
adoquery1.SQL.Add('select * from #table1');
adoquery1.Open;end;我用到了临时表,但不知怎么处理好?
请问要怎么操作才实现我的功能?

解决方案 »

  1.   

      select employee_id,employee_name,employee_workage,
           case when employee_workage <1 then 0 
                when employee_workage between 1 and 10 then 5
                when employee_workage between 10 and 20 then 10
           else 20 
           end as 'holiday'
    from t
      

  2.   


    select employee_id,employee_name,employee_workage,
           case when employee_workage <1 then 0 
                when employee_workage>1 and employee_workage<10 then 5
                when employee_workage>=10 and employee_workage< 20 then 10
           else 20 
           end as 'holiday'
    from t