表A有四个字段:
A1,A2,A3,A4
其中在大部分情况下A1,A2,A3的值都是“%”,特殊情况为具体值
现在要根据条件选出A4的值,做法是:
现在需要根据A1,A2,A3的值选择A4的值。筛选方式如下:当A3的值不为"%"的时候只根据A3的值筛选,如果A3为"%"A2不为"%",则由A2筛选,如果A3,A2都为"%"
A1不为"%",则由A1作为筛选条件。
如果都为"%",则直接忽略条件。
总的来说就是要通过A1,A2,A3作为条件,其中优先级为:A3,A2,A1.
如果A3的值不是"%",则要根据A3的值筛选的。通过传入的参数和A3比较。
会传入三个参数,分别和A1,A2,A3比较。如果A3的值不为“%”在看A2,以此类推。
C语言和SQL的混合表示算法应该如下:
if(A3!="%" ¦ &brvbarA2!="%" ¦ &brvbarA1!="%")
{
   select A4 from table where A3 = @A3
   break;
   if(A2!="%")
   {
       select A4 from table where A2 = @A2
       break;
       if(A1!="$")
       {
           select A4 from table where A1 = @A1
           break;
       }
   }
 }
else
    select A4 from table