RecordSet的filter属性可以对字段长度进行过滤吗?

achill 2004-04-21 03:25:15
例如:
我要找col1的字符串是两位长度的所有记录。
我试过
rs.filter = "length(col1) = 2",出错
rs.filter = "len(col1) = 2",出错
要怎么写才行?

...全文
228 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
achill 2004-06-11
  • 打赏
  • 举报
回复
'SELECT * FROM table1 WHERE LEN(col1) = 2'
你知道为什么是大写的吗?是在SQLServer中运行查询自动转换的,是在SQLServer中测试通过了,才复制、粘贴过来的
---------------------------------------------

是这样啊?那个...那个....是偶不对^^!
分给你多些吧,呵呵
viena 2004-04-29
  • 打赏
  • 举报
回复
\\回小琴:在sqlserver中是length(),呵呵。
有无搞错?我知道sqlserver中可以length(),但LEN()不可以吗?!

'SELECT * FROM table1 WHERE LEN(col1) = 2'
你知道为什么是大写的吗?是在SQLServer中运行查询自动转换的,是在SQLServer中测试通过了,才复制、粘贴过来的
achill 2004-04-29
  • 打赏
  • 举报
回复
在sqlserver中我也可以用 col1 like '__',使用通配符来实现长度=2的条件。
但是在filter中,它、它、它、它竟然说出错!!
filter的语法好单调阿。

感谢ukyoxh(我来学习)贴了一个filter的使用方法。
谁还有更详细点的语法?贴来给小弟看看。呵呵。
achill 2004-04-29
  • 打赏
  • 举报
回复
回滴嗒:那样会把所有非空值都选上,没什么用。

回老头:我也想过这种做法,但在处理的时候会用bookmark把一条条记录的位置记下来。
选两次的话,记录集里面的bookmark会给打乱,行不通。不过还是谢谢你。

我倒是有一个笨方法:不用filter,在处理记录的时候再判断记录是否符合条件,不符合条件就不处理。不过这样子循环数就会增加,是个相当笨的方法,呵呵。
freedomjim 2004-04-29
  • 打赏
  • 举报
回复
呵呵,简单的解决方法:
如果你要的话,用两次不就行了
先用SELECT * FROM table1 WHERE length(col1) = 2查出结果
再一次做正事就是了
lcdida 2004-04-29
  • 打赏
  • 举报
回复
测试一下,这样行不行
rs.filter = "col1 like '%%'",
achill 2004-04-28
  • 打赏
  • 举报
回复
回小琴:在sqlserver中是length(),呵呵。

回射天狼:用的是sqlserver。

谢谢各位了。不过各位的答案解决不了我的问题,用sql语句作这个控制我是知道的。

我要求选到recordset中的必须是没有length(col1) = 2这样的限制。
在处理过程中再根据动态条件进行过滤。
recordset中的记录另有用途,不能在从数据库取出来的时候就过滤了。
要命的是,另外一部分用途不是我来控制的,要流到另外的标准流程去,
5555555555555555555

如果不行的话,只能自己另建一个独立的过程来处理了。
3000多行的代码,以前的程序员把这个流程写得跟其它流程千丝万缕的联系。
修改起来很头晕啊。
555555555555

再过一天,没有办法就的结贴了。
viena 2004-04-21
  • 打赏
  • 举报
回复
楼上什么意思?难道在SQLServer中就不可以吗?
maskzha 2004-04-21
  • 打赏
  • 举报
回复
在ACCESS中

SELECT * FROM USERS where len(USER_NAME) = 5 是可以的
ukyoxh 2004-04-21
  • 打赏
  • 举报
回复
最主要的是要找为什么!!

看一看吧!!


条件字符串由 FieldName-Operator-Value 格式(如“LastName = 'Smith'”)的子句组成。可以创建用单独的 AND(如“LastName = 'Smith' AND FirstName = 'John'”)或 OR(如“LastName = 'Smith' OR LastName = 'Jones'”)子句连接而成的混合子句。对于条件字符串请遵循以下规则:

FieldName 必须为 Recordset 中的有效字段名。如果字段名包含空格,必须用方括号将字段名括起来。


Operator 必须使用的操作符为:<、>、<=、>=、<>、= 或 LIKE。


Value 是用于与字段值(如 'Smith'、#8/24/95#、12.345 或 $50.00)进行比较的值。字符串使用单引号而日期使用井号 (#),对于数字,可以使用小数点、货币符号和科学记数法。如果 Operator 为 LIKE,Value 则可使用通配符。只允许使用星号 (*) 和百分号 (%) 通配符,而且必须为字符串的尾字符。Value 不可为 Null。


AND 和 OR 在级别上没有先后之分。可使用括号将子句分组。但不能象以下示例那样先将由 OR 联接的子句分组,然后将该组用 and 联接到其他子句。
(LastName = 'Smith' OR LastName = 'Jones') AND FirstName = 'John'

与之相反,可以构造如下形式的筛选:
(LastName = 'Smith' AND FirstName = 'John') OR (LastName = 'Jones' AND FirstName = 'John')

在 LIKE 子句中,可在样式的开头和结尾使用通配符(如 LastName Like '*mit*'),或者只在结尾使用通配符(如,LastName Like 'Smit*') 。
射天狼 2004-04-21
  • 打赏
  • 举报
回复
不可以,用SQL语句吧!!
不过注意一下,不同的数据库求长度的函数不一样,你用的什么数据库!?
weaest 2004-04-21
  • 打赏
  • 举报
回复
可以直接用SQL过滤
SELECT * FROM table1 WHERE length(col1) = 2
viena 2004-04-21
  • 打赏
  • 举报
回复
用filter不可以
SELECT * FROM table1 WHERE LEN(col1) = 2
内容概要:本文围绕超导磁能储存系统(SMES)的建模与仿真展开,基于Simulink平台构建系统级动态仿真模型,涵盖超导线圈、功率转换系统(PCS)以及核心控制策略等关键模块。研究重点在于分析SMES在电网中实现快速能量存储与释放的能力,验证其在提升电力系统稳定性、抑制功率波动方面的有效性,尤其针对新能源发电带来的间歇性与波动性问题提供了有效的解决方案。通过仿真手段深入探讨系统的动态响应特性,为优化控制算法的设计与应用提供可靠的技术支撑。; 适合人群:适用于具备电力系统、自动控制理论或能源存储技术背景,熟悉Simulink仿真环境的科研人员、工程技术人员及研究生;同时适合有志于开展新型储能技术仿真研究的高年级本科生参考学习。; 使用场景及目标:①深入理解超导磁能储存系统的基本结构、工作原理及其在电力系统中的应用场景;②掌握在Simulink中搭建复杂电力电子与控制系统联合仿真模型的方法;③研究SMES在电网调频、电压支撑、瞬时功率补偿等典型工况下的动态性能表现;④为后续先进控制策略(如PID、模糊控制、现代控制理论等)的优化设计与验证提供仿真试验平台。; 阅读建议:建议读者结合文中模型逐步动手搭建仿真系统,重点关注各功能模块的参数设置与信号接口匹配,配合具体案例进行仿真调试,深入理解控制逻辑与系统动态行为之间的内在联系,并可进一步拓展至与其他储能形式(如锂电池、飞轮储能)的性能对比研究,以深化对不同类型储能技术特点的认知。
内容概要:本文围绕“考虑火-储联合调频(火电机组-混合储能)的协同控制策略”展开研究,提出一种基于Matlab仿真的协同控制方法,旨在提升电力系统频率调节的快速性与稳定性。通过构建火电机组与混合储能(如蓄电池、飞轮等)的联合调频模型,设计合理的功率分配机制与控制策略,充分发挥火电的持续调节能力与储能的快速响应优势,有效应对电网负荷波动与频率偏差。文中结合改进信号分解算法(如ICEEMDAN)与优化算法(如GWO),实现对调频信号的精准分频与储能单元的优化调度,提高系统整体调频效率与经济性。; 适合人群:具备一定电力系统基础知识和Matlab编程能力,从事新能源并网、电力系统稳定控制、储能技术应用等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于研究火电机组与混合储能在电网一次调频、二次调频中的协同作用机制;②为实际电力系统中储能配置与调频控制策略设计提供仿真验证平台与理论支持;③支撑相关课题研究、学术论文撰写及工程项目前期论证。; 阅读建议:建议结合Matlab代码深入理解控制算法实现细节,重点关注功率分配逻辑、信号分解过程与优化算法参数设置,并可通过修改系统参数进行对比仿真,以加深对协同控制效果的认识。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧