我有这样一句查询.在sql是可以通过的.   selelct spdm,sl,jiage,(jiage/sl) as jj from yyy    但是写到delphi里面就出错.我是这样写的.adoquery1.sql.add('selelct spdm,sl,jiage,(jiage/sl) as jj from yyy ')    请问一下我应该怎么写?

解决方案 »

  1.   

    adoquery1.sql.add('selelct spdm,sl,jiage,jiage/sl as jj from yyy ') 
      

  2.   

    adoquery1.sql.add('selelct spdm,sl,jiage,jiage/sl as jj from yyy ') 
      

  3.   

    你那个字段jiage/sl好像数据库不允许这样命名的字段吧..
    是手写错误还是?
    而且这个()也不能有,否则在查询分析器中就有提示错误: '(' 附近有语法错误。
      

  4.   


    谁告诉你jiage/sl这个是字段名?两个字段不能除?
    有括号会报错?我这儿怎么不会?
      

  5.   

      sql.Add('select riqi,qymc,ckmc,zj,zjxs from baobiao');这句可以通过.
    如果写成sql.Add('select riqi,qymc,ckmc,zj,zjxs,zjxs/zj as zjjxs from baobiao');
      就服错了
      

  6.   

       报未定义的错误..用DIV也不行
    不知道为什么
      

  7.   

    是不是被0除了?
    改成:
    select riqi,qymc,ckmc,zj,zjxs,case zj when 0 then 0 else zjxs/zj end as zjjxs from baobiao
    试试
      

  8.   

    嗯.是啊.就是0的问题.但是corn1 我按你的方法写还是报错.
      

  9.   

    adoquery1.close;
    adoquery1.sql.clear;
    adoquery1.sql.add('selelct spdm,sl,jiage,(jiage/sl) as jj from yyy ');
    adoquery1.open;
    既然SQL没错,那错的肯定是你的设计,也许是adoquery1设置有问题,纯粹看你那句代码是看不出问题来的
      

  10.   

    玉米那个写的是对的阿我试了
      ADOQuery1.Close;
      ADOQuery1.SQL.Text := 'select id,case field2 when 0 then 0 else field1/field2 end as jieguo  from table3';
      ADOQuery1.Open;
      

  11.   

    跟踪一下,把程序中最后的SQL放在查询分析器中试试。
      

  12.   

       
       好像是这句话不能直接写到delphi里面.我把这两个字段全部改为非0了还是报错
    是不是我写入的格式有问题?
      

  13.   

    你到现在还没说到底报的是什么错
    我的那句sql应该没问题的
      

  14.   

    SQL语句已经试过,没有问题啊?
    是不是其它的地方有问题?
      

  15.   


      ADOQuery1.Close;
      adoquery1.sql.add('selelct spdm,sl,jiage,[(jiage/sl)] as jj from yyy ') 
      ADOQuery1.Open; 
      

  16.   


      sql.Add('select riqi,qymc,ckmc,zj,zjxs from baobiao'); 这句可以通过. 
    如果写成 sql.Add('select riqi,qymc,ckmc,zj,zjxs,zjxs/zj as zjjxs from baobiao'); 
      就服错了 
    應該是 0 除錯誤,加一個 CASE 判斷下比較好
      

  17.   


    报未定义的错误.不好意思.我因为这边网不好.上一次比较慢.我猜应该是sql语法写入delphi 的错误.