if(dbddbl >= dBegin && dbddbl < dEnd)
if(dbddbl < dBegin && dbddbl > dEnd)
if(dbddbl <= dBegin && dbddbl > dEnd)
if(dbddbl > dBegin && dbddbl <= dEnd)我这里的>、<、>=、<= 比较符号是 活的 需要从数据库取出出来,请问有什么办法 把数据库取出来的 比较符号  用于判断中!!!!     大虾 帮帮!!!!!!!!!!

解决方案 »

  1.   

    <dBegin 
    ==dBegin 
    >dBegin&&<dEnd
    ==dEnd
    >dEnd
    不就这几种情况吗
      

  2.   

    public static bool demo3(int paramA, string _symbol, int paramB)
            {
                bool reg = false;
                switch (_symbol)
                {
                    case ">":
                        reg = (paramA > paramB);
                        break;
                    case ">=":
                        reg = (paramA >= paramB);
                        break;
                    case "<":
                        reg = (paramA < paramB);
                        break;
                    case "<=":
                        reg = (paramA <= paramB);
                        break;
                }
                return reg;
            }if(demo3(dbddbl, >= ,dBegin )&& demo3(dbddbl, < ,dEnd))
      

  3.   

    数据库存了 2个 int 类型的值 和 2个符号 比如:
    1  >   4  <
    2  >=  6  <=
    5  <=  8  >=
    ..
     
    现在有个值需要进行比较是否在范围内 如:
       1 >  2 <4
       2 >= 2 <=6
       5 <= 2 >=8 就是这样的结果!!  请问有办实现吗?
      

  4.   

    5楼的那个demo3函数,你试验一下
      

  5.   

       System.Data.DataTable dt = new System.Data.DataTable();
       var t = dt.Compute("2>4", "").ToString();
      

  6.   

    还有一种方法是直接用sql,动态拼接sql
    insert tb
    select '1=1' union all
    select '1<1' union all
    select '1>=1' union all
    select '2<1' 
    declare @sql nvarchar(1000)
    select @sql=isnull(@sql,'')+'union all select '''+rtrim(txt)+''' txt where (select count(1) from tb where '+rtrim(txt) +')>0 ' from tb
    set @sql=stuff(@sql,1,10,'')
    exec(@sql)//查询条件成立的