Foxtable(狐表)用户栏目专家坐堂 → 如何删除表中的数字行效率最高?


  共有2254人关注过本帖树形打印复制链接

主题:如何删除表中的数字行效率最高?

帅哥哟,离线,有人找我吗?
有点色
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/17 11:31:00 [显示全部帖子]

写sql语句吧

 

Delete From {表A} Where ISNUMERIC(第一列)

[此贴子已经被作者于2017/3/17 11:31:50编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/17 12:04:00 [显示全部帖子]

以下是引用wh420在2017/3/17 11:49:00的发言:
ISNUMERIC应该也只能判断正常的数字,像序号类的似乎判断不了 1.2.3.3

 

你的是Access数据库还是SqlServer数据库?

 

如果是Sqlserver,你可以用Replace把.替换成空白

 

Delete From {表A} Where ISNUMERIC(Replace(第一列, '.', ''))


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/17 12:05:00 [显示全部帖子]

 如果,你的是Access,你可以在数据库里面,加入一个Replace函数。

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/17 15:14:00 [显示全部帖子]

Dim dt As DataTable = DataTables("表A")
Dim sb As new stringbuilder
Dim r As New System.Text.RegularExpressions.Regex("^[0-9.]+$")
For Each dr As DataRow In dt.Select("")
    If r.ismatch(dr("第一列")) Then
        sb.append(dr("_Identify") & ",")
    End If
Next
Tables("表A").Filter = "_Identify in (" & sb.tostring & ")"
'dt.deletefor("_Identify in (" & sb.tostring & ")")

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/17 16:18:00 [显示全部帖子]

以下是引用wh420在2017/3/17 16:13:00的发言:
谢谢老师,功能实现,能告诉我一下思路吗?好像是把数字筛选出来然后删除掉?

 

不就是循环每一行,满足条件的就记录一下,最后筛选或删除吗?


 回到顶部