急!sql200 like使用?

xzgtliu 2003-10-21 08:07:48
string thdwcx
thdw.text='徐州'
thdwcx='%' + thdw.text + '%'
int lssl
select count(*)
into :lssl
from du1dpb_tmp
WHERE F37 like :thdwcx
using sqlca;
if sqlca.sqlcode=0 then
messagebox("提示窗口1","成功1:"+string(lssl))
else
messagebox("提示窗口1","失败1:"+sqlca.sqlerrtext)
end if
为何 只显示数量为0
我的表中字段确实有‘徐州’开始的
...全文
27 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
xzgtliu 2003-10-22
  • 打赏
  • 举报
回复
非常感谢大家的热情帮助
本问题解决,方法为
thdwcx ='%'+trim(thdwcx) + '%'
select count(*) into :lssl from du1dpb_tmp WHERE rtrim(F37) like :thdwcx ;
trim(f37)此函数不认,用rtrim(f37)

thelazyman 2003-10-22
  • 打赏
  • 举报
回复
那你使用数据窗口datawindow试试,在数据窗口中设置模糊查询的检索参数
在运行时
使用
string ls_tmp
ls_tmp=thdw.text
dw_1.settransobject(sqlca)
dw_1.retrieve(ls_tmp)
xzgtliu 2003-10-21
  • 打赏
  • 举报
回复
结果出不来。
感谢大家的帮助。
语法大家都是对的,问题是为何不能模糊查询,如条件写全结果都可以出。
我F37字段长60位char类型,是不是有问题。
jdsnhan 2003-10-21
  • 打赏
  • 举报
回复
从外面给变量赋值:
string ls_temp
ls_temp = '%' + thdwcx + '%'
select count(*) into :lssl
from du1dpb_tmp
WHERE F37 like :ls_temp ;
thelazyman 2003-10-21
  • 打赏
  • 举报
回复
我也许不是“高手”,但请看:
string thdwcx
int lssl

thdw.text='徐州'
// thdwcx=thdw.text
thdwcx="'%" + thdw.text + "%'"
//注意上述字符变量的处理
select count(*)
into :lssl
from du1dpb_tmp
WHERE F37 like :thdwcx
using sqlca;
if sqlca.sqlcode=0 then
messagebox("提示窗口1","成功1:"+string(lssl))
else
messagebox("提示窗口1","失败1:"+sqlca.sqlerrtext)
end if
祝你好运,老兄!!
特此关注。。。
xzgtliu 2003-10-21
  • 打赏
  • 举报
回复
把%去掉也不行
liliang800207 2003-10-21
  • 打赏
  • 举报
回复
若是以徐州开头
把徐州前的%去掉
要不好像默认前边有字符
xzgtliu 2003-10-21
  • 打赏
  • 举报
回复
1、我这样写 select count(*) into :lssl from du1dpb_tmp WHERE F37 like '%徐州%'
可查到‘徐州电台'这条记录
2、若用变量thdwcx='徐州'
select count(*) into :lssl from du1dpb_tmp WHERE F37 like '%'+:thdwcx+'%'
查不到‘徐州电台'这条记录,
为何!为何!奇怪!奇怪!高手帮忙!!!我用pb7.0+sql200+winserver200

xzgtliu 2003-10-21
  • 打赏
  • 举报
回复
1、用 '%'+:thdwcx+'%' 语句这样写确实正确
2、但若thdw.text='徐州',就查不到‘徐州电台'这条记录
3、但若thdw.text='徐州电台'',就可查到‘徐州电台'这条记录
4、为何用like '徐州%' 在pb7.0中就不能查到'徐州电台'这条记录,pb7.0有缺陷
mittee 2003-10-21
  • 打赏
  • 举报
回复
用 '%'+:thdwcx+'%' 肯定能查到。
用 :thdwcx+'%' 也能查到‘徐州电台'
xzgtliu 2003-10-21
  • 打赏
  • 举报
回复
我用pb7.0我发现如果我把thdw.text加长='徐州电台'就能查找到,f37字段内容确实有此‘徐州电台'
奇怪??模糊查询不能用?
yl_yz 2003-10-21
  • 打赏
  • 举报
回复
thdwcx="'%" + thdw.text + "%'"
adorabl2282 2003-10-21
  • 打赏
  • 举报
回复
你为什么要那样写了,你这样试一试,也许有用
string thdwcx
thdw.text='徐州'
thdwcx=thdw.text
int lssl
select count(*)
into :lssl
from du1dpb_tmp
WHERE F37 like '%'+:thdwcx+'%'
using sqlca;
if sqlca.sqlcode=0 then
messagebox("提示窗口1","成功1:"+string(lssl))
else
messagebox("提示窗口1","失败1:"+sqlca.sqlerrtext)
end if
内容概要:本文提出文旅项目应基于“全生命周期”视角构建建设期与运营期的绩效考核体系,强调考核需贯穿项目全过程,分阶段设定科学指标。建设期以“按约交付”为目标,重点考核施工进度、工程质量、成本控制及安全生产、合规管理等过程指标;运营期以“价值实现”为核心,围绕经营效益、运营质量、可持续发展和综合管理四个维度,评估项目的经济效益、服务质量、社会生态贡献及长期发展潜力。体系设计坚持全生命周期、分层分类与目标对齐、结果导向与过程控制相结合三大原则,确保考核与企业战略协同并适应不同类型项目特点。; 适合人群:从事文旅项目管理、政府监管部门人员、咨询机构专业人员以及企业中高层管理者,具备一定项目管理或绩效考核经验者; 使用场景及目标:①用于指导文旅项目在建设与运营各阶段的绩效指标设计与考核机制搭建;②帮助企业实现项目全流程管控,提升项目质量与综合效益;③推动战略目标落地,优化资源配置与管理决策; 阅读建议:在实际应用中需结合项目具体类型(如盈利型或公益型)灵活调整指标权重,注重数据采集与动态反馈,将考核结果与激励机制挂钩,持续改进管理体系。

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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