更换所有的空间出现在一个表中我如何写一个SQL查询来代替空间所有出现下划线的表,而无需编写单独的语句为每列?SQL查询以下划线
回答
UPDATE [表名] SET [FIELD_NAME] =替换([FIELD_NAME], ' ' '_'),[栏位2] =替换([栏位2],'', '_')
然而,这样,你还是要每列总而言之,上面的回答可能更适合您的需要
+1 400K行应该不会构成太大的问题。我不知道他想要t o如果有> 1个连续空间的值,请执行操作? – 2009-12-03 11:25:56
什么单引号? – Fionnuala 2009-12-03 11:35:38
您可以使用和VBA的混合物SQL:
Dim rs As DAO.Recordset
Dim db As Database
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT * FROM TheTable")
For i = 0 To rs.Fields.Count - 1
''You may wish to check dbMemo as well as dbText
If rs.Fields(i).Type = dbText Then
''You have to watch out for single quotes as well as spaces
s = "UPDATE TheTable SET [" & rs.Fields(i).Name & "] = " _
& "Replace(Replace([" & rs.Fields(i).Name & "],""''"",""'""),"" "",""_"") " _
& "WHERE Instr([" & rs.Fields(i).Name & "],"" "")>0 " _
& "AND [" & rs.Fields(i).Name & "] Is Not Null"
db.Execute s, dbFailOnError
Debug.Print db.RecordsAffected
End If
Next
其实,这混合物包括Access对象模型太微妙但却是事实。 Access数据库引擎SQL缺少Replace()函数,并且必须由Access对象模型提供。如果您尝试从Access UI外部执行此操作,那么您的SQL将因语法错误而失败。 – onedaywhen 2009-12-04 09:00:46
有时候,你并不需要一个锤子(代码)即使问题看起来像钉子。
如果这是一个一次性的任务,该表是不超过几百万行,你可以打开表,并做了查找和从访问编辑菜单(或Ctrl-H)取代了。
这是访问的那些方便的数据处理能力,使得它这么混账的临时数据库的工作有用的。
注意事项:
(1)性能将不会对大表很大,但在中等大小的表非常适用于一次性的数据清除任务(或当你愿意等待几分钟吧(2)这种技术创建的锁具有一定的压迫性,所以对于大量用户主动使用的数据库,建议不要这样做。
使用查找和替换移动通过数据,这将是数量级比使用SQL UPDATE语句慢的顺序一行接一行。 -1的建议,除了几千行或更少的表格外,其他任何东西都不可行。 – 2009-12-05 00:59:40
该OP明确指出,他只有几千行,我的回答特别包括免责声明,它只是用于较小的表格。大卫,你还想要什么? – JohnFx 2009-12-05 01:08:12
另外,如果是一次性的(我也提到了),那么性能可能不是一个大问题。我已经在具有数百万行的表上完成了这项工作。不过,我会再加一个警告,这个在桌子上的锁定非常残酷,所以我会避免在有很多其他用户的情况下。尽管如此,它在数据分析类型项目中的作用非常好。 – JohnFx 2009-12-05 01:09:53
- 1. MySQL的LIKE查询用下划线
- 2. solr查询分析器下划线
- 3. MySQL查询以下划线替换列中的空格
- 4. SQL查询来比较以下查询
- 5. SQL查询以下问题
- 6. 需要以下SQL查询:
- 7. NSPredicate以下划线崩溃
- 8. 操纵以下划线
- 9. 加下划线或不加下划线
- 10. 文本下划线显示下划线
- 11. 以下情况下的SQL查询
- 12. 如何查找以下SQL查询?
- 13. 如何从查询结果中缩短长下划线在sql server 2005中
- 14. 检查以下划线开头的属性可以吗?
- 15. 如何检查函数以检查双下划线用法?
- 16. 有线sql查询
- 17. 用下划线
- 18. 用下划线
- 19. 转义在Web Sql下划线
- 20. SQL插入值小写和下划线
- 21. CSV Python划分下划线
- 22. 春季孟戈查询集合属性与下划线字符
- 23. 在MySQL查询使用文字下划线从C#
- 24. Solr 5.1:包含下划线的搜索查询问题
- 25. 转义字符在Ruby on Rails的下划线查询
- 26. 谁添加“_”单下划线查询参数?
- 27. 下划线_.clone()不适用于解析JS SDK复合查询
- 28. 逃生下划线的列名在访问ODBC查询
- 29. 以下输出的Oracle SQL查询?
- 30. 如何编写以下SQL查询?
只需要做它在一毫秒的存取如果VBA代码可以做到这一点它会适合我的选择。请注意,该数据库是在访问约4十万条记录 – silverkid 2009-12-03 11:10:54