比如我有张表数据如下
index   name  type0        A      CA0        A      CB0        A      CB1        B      CA1        B      CA1        B      CA
现在我要写个SQL语句 查出index为0,name为B的所有记录 我的想法是select * from table where index = 0 or name = 'A'; 请各位指点下

解决方案 »

  1.   

     select * from table where index=0 And name='B' 
      

  2.   

    你到底想要并且的关系还是或的关系??并且的关系:select * from table where index = 0 and name = 'A';
    或的关系:select * from table where index = 0 or name = 'A';
      

  3.   

    查出index为0,name为B的所有记录
      

  4.   

    查出index为0,name为B的所有记录  我就是想问是用AND 还是 OR 
      

  5.   

    1、查出index为0,且name为B的所有记录
    并且的关系:select * from table where index = 0 and name = 'B';2、查出index为0,或name为B的所有记录
    或的关系:select * from table where index = 0 or name = 'B';
      

  6.   

    我最后要的结果是这样
    index  name type
    0        A
    0        A
    0        A
    1        B
    1        B
    1        B
    不知道我说清没 SQL怎么写 表本来记录我只是写了部分
      

  7.   

    从给的数据来看就是或的关系 select * from table where index = 0 or name = 'B';
      

  8.   

    index   name 
    0        A
    0        A
    0        A
    的话就是where index = 0 and name = 'A'是吗
      

  9.   


    /*
    是你想得到什么的结果,看看OR/AND 执行吧
    */
    SQL> with t as(
      2  select 0 IND,'A' name,'CA' type from dual
      3  union all
      4  select 0 IND,'A' name,'CB' type from dual
      5  union all
      6  select 0 IND,'A' name,'CB' type from dual
      7  union all
      8  select 1 IND,'B' name,'CA' type from dual
      9  union all
     10  select 1 IND,'B' name,'CA' type from dual
     11  union all
     12  select 1 IND,'B' name,'CA' type from dual)
     13  select * from t where IND=0 or name='B';
     
           IND NAME TYPE
    ---------- ---- ----
             0 A    CA
             0 A    CB
             0 A    CB
             1 B    CA
             1 B    CA
             1 B    CA
     
    6 rows selected
     
    SQL> 
    SQL> with t as(
      2  select 0 IND,'A' name,'CA' type from dual
      3  union all
      4  select 0 IND,'A' name,'CB' type from dual
      5  union all
      6  select 0 IND,'A' name,'CB' type from dual
      7  union all
      8  select 1 IND,'B' name,'CA' type from dual
      9  union all
     10  select 1 IND,'B' name,'CA' type from dual
     11  union all
     12  select 1 IND,'B' name,'CA' type from dual)
     13  select * from t where IND=0 AND name='B';
     
           IND NAME TYPE
    ---------- ---- ----
     
    SQL> 
      

  10.   

    select distinct * from table where index=0 or name='B'