现有ACCESS数据库,表TB(ID,NAME,AGE)
ID             NAME               AGE
1           张三,李四            25,26
2           王五,赵六            27,28现有语句Select * from TB where '张三' in (NAME) And 26 in (AGE)这样为什么查不到数据?
请问问题出在哪?

解决方案 »

  1.   

    Select * from TB where Name = '张三' And AGE=26
      

  2.   

    Select * from TB where Name = '张三' And AGE=26
      

  3.   

    是这样的
    字段name中的数据是[张三,李四],[王五,赵六]
    即:张三,李四是一条数据,王五,赵六是一条数据
    同理:25,26是一条数据,27,28是一条数据
    所以才会用到IN查询
      

  4.   

    Select * from TB where Name like '%张三%' And AGE=26
      

  5.   

    --严格一点:Select * from TB where ','+Name+',' like '%,张三,%' And AGE=26--或者:Select * from TB where Charindex(',张三,',','+Name+',')>0 And Age=26
      

  6.   

    htl258:
    首先谢谢你,希望你能帮我解决这个问题,目前你的回答都不正确,嘿嘿,不好意思一条记录三个字段:ID:1  、   name :张三,李四 、 age : 25,26其实我就是要查一个包含的数据记录
    即:记录中 name 字段包含‘张三’,并且 age 字段包含26的(这里请注意,可能存在[6,26,36]的情况)
      

  7.   


    select * from tb 
    where ','+name+',' like '%,张三,%' and ','+age+',' like '%,6,%'