现状:
       表:           Main   ,      Tmp         检索字段 :   Main.Name,
                     Main.Date,
                     Tmp.SPEC       检索条件:    Main.ID = Tmp.ID
                 AND
                   ( Main.ID = 指定ID
                 OR  Main.ID = 指定ID2
                      .....
                 OR  Main.ID = 指定IDn )       其中 n < 200
 
SQL:   SELECT Main.Name,
               Main.Date,
               Tmp.SPEC
        FROM   Main,Tmp
        WHERE  Main.ID = Tmp.ID
        AND
             ( Main.ID = 指定ID
           OR  Main.ID = 指定ID2
                  .....
           OR  Main.ID = 指定IDn )          
       而整个检索结果是用来存放在一个结果集里面做后续处理
需要解决的问题:
  又追加了个检索条件Tmp.Class,检索字段中第二项:Main.Date
  当Tmp.Class = 1时 检索Main.Date,
  当Tmp.Class = 0时 检索Tmp.Date 求解决方案。 

解决方案 »

  1.   

    SELECT Main.Name,
                   (case when Tmp.Class = 1 then Main.Date 
             when Tmp.Class = 0 then Tmp.Date 
             end ),
                   Tmp.SPEC
            FROM   Main,Tmp
            WHERE  Main.ID = Tmp.ID
            AND
                 ( Main.ID = 指定ID
               OR  Main.ID = 指定ID2
                      .....
               OR  Main.ID = 指定IDn )  不确定,你试试看
      

  2.   

    zuoyangguang(瓜瓜):使用你的方法搞定了 谢了 ,本帖完结,请收分哈。