|
SELECT TB_ARCHIVES.ID,TB_ARCHIVES.NAME_CN,TB_TABLEMGT.NAME_EN,FIELDLIST FROM (( TB_ARCHIVES left join TB_BROWSESTRUCTURE on (TB_BROWSESTRUCTURE.TB_ARCHIVES_id=TB_ARCHIVES.id and TB_BROWSESTRUCTURE.TB_USER_ID=1)) LEFT JOIN TB_TABLEMGT ON TB_TABLEMGT.ID=TB_ARCHIVES.TB_TABLEMGT_ID)
其中TB_BROWSESTRUCTURE中没有TB_USER_ID=1的记录,如果把sql语句中的“and TB_BROWSESTRUCTURE.TB_USER_ID=1”去掉,那么在98、2000下都能查到记录了。请问为什么加上这个条件后在windows98下就差不到记录呢?
ps:
该sql在win98+SQLServer、win2000+Access、Win200+SQLServer中测试正常,只有在Win98+Access中不行,而且做连接的字段类型都是匹配的,关键是如果把sql语句中的“and TB_BROWSESTRUCTURE.TB_USER_ID=1”(TB_BROWSESTRUCTURE.TB_USER_ID = 1条件记录为空)去掉,那么就能查到记录了。
|
|