环境是这样的..有五个输入框做为查询条件进行查询....这五个框期中可以有空条件存在..我就用了COALESCE这个函数进行处理..我不大会用该函数..我把我的查询代码贴出来..请大家帮忙看看..哪出问题了..谢谢了..
    Querystr:='select  *  from  Table where 用户名=COALESCE(SuiEdit1.Text) '+
              'and  身份=COALESCE(SuiEdit2.Text) '+
              'and  手机号=COALESCE(SuiEdit6.Text) '+
              'and  学生ID=COALESCE(SuiEdit8.Text) '+
              'and  有效=COALESCE( SuiComBobox1.Text)';
    sqlexe1(Querystr);
    Query1.Open;

解决方案 »

  1.   

    那是TSQL的函数你怎么能直接在DELPHI里面用
      

  2.   

    返回类型
    将相同的值作为 expression 返回。注释
    如果所有自变量均为 NULL,则 COALESCE 返回 NULL 值。COALESCE(expression1,...n) 与此 CASE 函数等价:CASE
       WHEN (expression1 IS NOT NULL) THEN expression1
       ...
       WHEN (expressionN IS NOT NULL) THEN expressionN
       ELSE NULL
    这样其实达不到你的目的的
      

  3.   

    Querystr:='select  *  from  Table where 用户名=COALESCE(SuiEdit1.Text) '+
                  'and  身份=COALESCE('''+SuiEdit2.Text+''') '+
                  'and  手机号=COALESCE('''+SuiEdit6.Text+''') '+
                  'and  学生ID=COALESCE('''+SuiEdit8.Text+''') '+
                  'and  有效=COALESCE(''' +SuiComBobox1.Text+''')';