http://luckybbs.com/showannounce.asp?id=275http://www.emagister.cn/cursos-%E4%B8%80%E4%B8%AA%E5%8D%81%E8%BF%9B%E5%88%B6%E8%BD%AC%E4%BA%8C%E8%BF%9B%E5%88%B6%E7%9A%84sql%E5%87%BD%E6%95%B0-simcour-2201940.htm

解决方案 »

  1.   

    SELECT *
    FROM(
    SELECT na = 2 UNION ALL
    SELECT na = 3 UNION ALL
    SELECT na = 4
    )tab
    WHERE (na/2)%2 = 1-- 结果:
    na
    -----------
    2
    3(2 行受影响)
      

  2.   

    WHERE na & 2 = 2
      

  3.   

    declare @d table(a int)
    insert @d select 1 union select 2
    union select 3 union select 4 union select 5
    select * from @dwhere a%2 = 1
      

  4.   

    declare @t table(na int)
    insert @t 
    select 1 
    union select 2
    union select 3 
    union select 4 
    union select 5select * from @t
    where na&2 = 2/*The result:*/
    na           
    ----------- 
    2
    3
      

  5.   

    declare @d table(a int)
    insert @d select 1 union select 2
    union select 3 union select 4 union select 5 union select 6
    union select 7 union select 8 union select 9 union select 10
    union select 11 union select 12
    select * from @d where a%4 <> 0 /*a           
    ----------- 
    1
    2
    3
    5
    6
    7
    9
    10
    11(所影响的行数为 9 行)
    */
      

  6.   

    邹建的错了
    SELECT *
    FROM(
    SELECT na = 2 UNION ALL
    SELECT na = 3 UNION ALL
    SELECT na = 4 UNION ALL
             SELECT na = 6
    )tab
    WHERE (na/2)%2 = 1na
    -----------
    2
    3(2 行受影响)
    SELECT *
    FROM(
    SELECT na = 2 UNION ALL
    SELECT na = 3 UNION ALL
    SELECT na = 4 UNION ALL
             SELECT na = 6
    )tab
    WHERE na & 2 = 2na
    -----------
    2
    3
    6(3 行受影响)
    6=110
    符合要求