在ACCESS中区分大小写
在ACCESS中区分大小写
网友提问:(等同于ACCESS)
请问下列sql中,有2个id -->ABA与ABa。因为access不区分大小写,
所以会出现4笔数据。请问该如何让Access join条件区分大小写,
让下列sql正确出现2笔数据?
※sql:
select a.id,b.name from a left join b on a.id=b.id
※查询结果:(出现4笔,如何只出现2笔)
id name
ABA 陈加凯
ABA 林家佳
ABa 陈加凯
ABa 林家佳
解决方法:select a.id,b.name from aleftjoin b on a.id=b.id where strcomp(a.id,b.id,0)=0
今天在整理ERP数据也遇到这样的问题。
原来ERP数据中货号代码中没有统一用大小字母,出现大小写混用,而且还有大小写来区分货品。现在在更整这样基础资料。
出现了这样的问题,
例:
旧料号 新料号 品名
12345A 12345A 板手 4
12345a 12345AA 扳手 5
当两个表查询时就出现了上面网友提到的问题:
下面是ACCESS的中SQL查询
SELECT 基础资料.PRD_NO, PRDT.PRD_NO, 基础资料.新货品代码, 基础资料.SNM, 基础资料.UT, 基础资料.UT1, 基础资料.DFU_UT, 基础资料.NAME, 基础资料.SPC, 基础资料.大类, 基础资料.WH, 基础资料.WH01, PRDT.*
FROM 基础资料 INNER JOIN PRDT ON 基础资料.PRD_NO = PRDT.PRD_NO
WHERE (((StrComp([基础资料].[PRD_NO],[PRDT].[PRD_NO],0))=0));
ACCESS中建好查询,然后在查询的“SQL查询视图”中加入下面这段
WHERE (((StrComp([基础资料].[PRD_NO],[PRDT].[PRD_NO],0))=0));
就OK了
参考资料: