模糊查询 sql结果为空值

如题SQL代码为
SELECT A.KINNO, A.CBDESC, A.CODE, A.CO, A.UNIT, A.LOC, A.LOTNO,A.QTY, A.TDATE, D.DE, E.QTLL, E.GDH FROM KT A,KUDF D, KTUDF E WHERE A.KINNO = D.KINNO AND A.KINNO = E.KINNO AND A.CO='HY' AND A.CBDESC like '%色母%'
可以肯定查找是有结果的。但是就是现实不出来,在'%色母%'这里加'%%色母%%'也不行,在线等结果谢谢
Server2005数据库用的是这个

第1个回答  2010-07-19
从几个角度看一下:
1、没有符合包含条件的数据,单独看一下A.CO='HY' AND A.CBDESC like '%色母%'
是否有记录;
2、如果有记录则看一下连表是不是出现问题,A.KINNO = D.KINNO AND A.KINNO = E.KINNO;
3、如果第二种也有记录,则看一下A.CO='HY' AND A.CBDESC like '%色母%'的KinNo是否在D和E表中也有记录,应该是这两张表中至少有一张表没有这笔记录
第2个回答  2010-07-19
建议先去取消后面的like看出来的结果是什么在写哈。你的模糊查询的写法是没有问题的。
第3个回答  2010-07-19
你用了两张表A,E,但是没有连接啊
试试看在WHERE之前加上“INNER JOIN E ON A.[PK]=E.[FK]”,其中A.[PK]=E.[FK]分别代表A的主键和E与A对应的副键。
第4个回答  2010-07-19
SELECT A.KINNO, A.CBDESC, A.CODE, A.CO, A.UNIT, A.LOC, A.LOTNO,A.QTY, A.TDATE, D.DE, E.QTLL, E.GDH FROM KT A inner join KUDF D on A.KINNO = D.KINNO inner join KTUDF E on A.KINNO = E.KINNO WHERE A.CO='HY' AND A.CBDESC like '%色母%'

试试
第5个回答  2010-07-19
语句没什么问题
你分段执行下sql,看看是不是都有结果
相似回答
大家正在搜