select a.*,b.*,c.* from a,b,c wher a.id=33 or b.id=33 or c.id=33

解决方案 »

  1.   

    不是要a,b,c所有的字段,而是33在哪个表中,就去哪个表的字段。
      

  2.   

    if exists(select * from a where id=33) 
    select * from a
    else
    begin 
      if exists(select * from b where id=33)
         select * from b
      else
        begin 
        if exists(select * from c where id=33)
          select * from c
        end
    end
         你试试吧!
      

  3.   

    select a.*,b.*,c.* from a,b,c wher a.id=33 or b.id=33 or c.id=33
    這樣就可以查出id=33的記錄的字段了
      

  4.   

    输出列如果相同(数据类型兼容)的话,那就用
    select column1,...columnn from tablename where id=xxxx
    union
    select col1,......coln from tablename2 where id=xxxx
    .......如果某表列数不足那就按,数据类型进行一一对应并输出null补充不足列作为输出
      

  5.   

    if exists(select 1 from a where id = 33) 
      select * from a where id = 33
    else if exists(select 1 from b where id = 33)
      select * from b where id = 33
    else if exists(select 1 from c where id = 33)
      select * from c where id = 33