Office中国论坛/Access中国论坛

标题: ACCESS如何实现替换功能 [打印本页]

作者: lgh00289    时间: 2011-5-20 15:58
标题: ACCESS如何实现替换功能
ACCESS如何实现替换功能
地名        路径                        结果
泰和        中国-江西-泰和        中国-江西-
鄱阳湖        中国-江西-鄱阳湖  中国-江西-
河源        中国-广东-河源        中国-广东-
深圳        中国-广东-深圳        中国-广东-

在表中中三字段“地名”,“路径”,“结果”,我想要通过地名和路径,达到结果这列?在ACCESS中如何实现?
作者: todaynew    时间: 2011-5-20 16:08
本帖最后由 todaynew 于 2011-5-20 16:11 编辑

假设你的表名称为tbname,则:

select 地名,路径,left(路径,InstrRev(路径,"-")) as 结果 from tbname

为你需要的结果,也可写为:

select 地名,路径,Replace(路径,地名,"") as 结果 from tbname

作者: aslxt    时间: 2011-5-20 16:08
查询的方法,基于地名和要去掉的那部分完全相同:
SELECT 表1.地名, 表1.路径, Left([路径],Len([路径])-Len([地名])) AS 表达式1 FROM 表1
作者: lgh00289    时间: 2011-5-20 16:24
谢谢todaynew 和aslxt
作者: aslxt    时间: 2011-5-20 16:42
替换方法
Private Sub Command0_Click()
  Dim rec As ADODB.Recordset
  Dim i As Long
  Set rec = New ADODB.Recordset
  rec.Open "select * from 表1", CurrentProject.Connection, adOpenStatic, adLockOptimistic
  For i = 1 To rec.RecordCount
    rec.Fields("路径") = Replace(rec.Fields("路径"), rec.Fields("地名"), "")
    rec.Update
    rec.MoveNext
  Next i
End Sub

作者: lgh00289    时间: 2011-5-21 09:03
TKS aslxt




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