Office中国论坛/Access中国论坛

标题: [求助]怎样去掉字段里的某个字符(用查询) [打印本页]

作者: tz-chf    时间: 2005-9-10 22:42
标题: [求助]怎样去掉字段里的某个字符(用查询)
如题。

例:表A,字段B

aab

ccbcc

eebd

要求去掉“b”,结果为:

aa

cccc

eed
作者: kunlun    时间: 2005-9-10 22:53
用replace就可以了
作者: tz-chf    时间: 2005-9-10 23:40
怎么个replace法?用查询,代码我会做。
作者: kunlun    时间: 2005-9-11 00:09
错了。不好意思

[此贴子已经被作者于2005-9-10 16:13:35编辑过]


作者: kunlun    时间: 2005-9-11 00:09
在查询中的字段名后面加个这个就行了: Replace([字段],6,"b")

连起来就是这样    字段: Replace([字段],b,"")

[此贴子已经被作者于2005-9-10 16:12:57编辑过]


作者: tz-chf    时间: 2005-9-11 04:46
还是不行。这句写在哪里,b至少得用引号吧?

是选择查询还是更新查询?

[attach]13029[/attach]


作者: wuaza    时间: 2005-9-11 05:02
SELECT  Replace([a],"b","") AS 去b之后

FROM 表1;


作者: tz-chf    时间: 2005-9-11 05:50
结果就是——表达式中 replace函数未定义。win xp、access 2000,你的是什么环境?
作者: kunlun    时间: 2005-9-11 16:49
我做了一去6改替换成b的例子给你学习吧

[attach]13039[/attach]


作者: tz-chf    时间: 2005-9-18 04:26
还是那样,不行,你用什么版本?
作者: hi-wzj    时间: 2005-9-18 20:15
1、去掉是一次性的(比如修订导入的期初数据)还是经常性的。2、字段中只有一个b还是有多个b都要去掉?还是有多个b但只去掉第一个b?
作者: tz-chf    时间: 2005-9-18 22:34
1、这个倒不重要,我碰到这个问题,想知道有没有办法解决。2、不管几个“b”,都去掉。
作者: 五拱柳林生    时间: 2005-9-24 07:33
用SQL可能不行啊,SQL中好象不能支持Replace这个函数。可能要将表打开后用循环来实现。
作者: LucasLynn    时间: 2005-9-24 07:44
直接在SQL中使用Replace是完全可以的,如果你的电脑实在不行的话,试试这个吧:

查询中使用:

表达式1: MyRp([字段1])

模块代码中使用

Public Function MyRp(str As String) As String

    ......    '里面代码我不写了,反正楼主说他会代码的。

End Function





[此贴子已经被作者于2005-9-23 23:51:28编辑过]


作者: tz-chf    时间: 2005-9-24 16:06
那不还是要写代码。我不是为用查询而用查询的。你的方法在我的电脑里确实不能用replace,大家有兴趣也可以试试,到底行不行。winxp + access 2000
作者: amaranta    时间: 2006-2-2 19:02
我也有这个问题,replace在查询中不能使用,不想在table中修改,就希望能够在查询中把这个字符去掉或者换掉
作者: 一点通    时间: 2006-2-2 19:41
以下是引用amaranta在2006-2-2 11:02:00的发言:
我也有这个问题,replace在查询中不能使用,不想在table中修改,就希望能够在查询中把这个字符去掉或者换掉

明知replace在查询中不能使用,哪就不在查询中用吧,但在窗体或报表还是可以用的,程序中不会只局限于查询吧
作者: amaranta    时间: 2006-2-2 20:08
标题: 回复:一点通
我用查询直接生成了report和form结果,也不能replace, 因为要导到excel,我一开始的思路就是建table出查询,然后就直接用查询生成了一模一样的form和report结果,replace只能在table里适用。我是不是要通过table来重新建立form呢,这样的话我可以将form导到excel吗?table是4个表格,query是4个连接表的整合,我是不是要把form也做成table里的4个表的整合呢?我是新手,好难的样子
作者: 一点通    时间: 2006-2-2 21:49
如果一定要用查询来实现,用14楼的方法是可以的,只是多写一个模块,但也是不难的事

[attach]15624[/attach]


[此贴子已经被作者于2006-2-3 17:32:58编辑过]


作者: amaranta    时间: 2006-2-4 01:28
先谢了
作者: amaranta    时间: 2006-2-4 01:37
代码写在那里啊?不知道如何看。没写过。还有,access里序号是用的Autonumber的属性,可是我做过删除的动作,如最后一条纪录是100我加了5条发现不对了,就删掉重加结果100后面就从106开始了而不是101。咋办呢?
作者: 一点通    时间: 2006-2-4 02:11
1\代码写在模块里

2\自动编号只是一种标识,是否连续号意义不大的,如果真的要实现连续的号,可先将自动编号列删除,然后再增加这个列,
作者: amaranta    时间: 2006-2-6 23:38
原来没有其他方法啊,我这样做过,可是每次都这样不是很过分吗,用number属性的话会给我自动加号吗?还是要我自己敲?有这样的函数去定义number吗?




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3