字符串解析查询 [英] String Parsing Query

查看:77
本文介绍了字符串解析查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

< SELECT name =" txtServices"大小= QUOT; 3英寸多个>

将OPTION值= QUOT;按摩">按摩< / OPTION>

将OPTION值= QUOT;面部护理">面部护理< / OPTION>

< OPTION value =" Wet&干燥身体治疗>湿& amp; amp;干性身体

治疗< / OPTION>

< OPTION value ="医疗治疗">医疗治疗< / OPTION>

< ; OPTION value =" Nails,Pedicures,Manicures"  Nails,Pedicures,

Manicures< / OPTION>

< OPTION value =" Hair">头发< / OPTION>

将OPTION值= QUOT;池">池< / OPTION>

将OPTION值= QUOT;打蜡">打蜡< / OPTION>

< OPTION value ="化妆>化妆< / OPTION>

< OPTION value =" Aromatherapy"> Aromatherapy< / OPTION>

< OPTION value =" Specialties"> Specialties< / OPTION>

< OPTION value =" Tinting"> Tinting< / OPTION>

< OPTION value =" Fitness&营养咨询>健身& amp;

营养咨询< / OPTION>

< / SELECT>< / TD>


由于这是一个多重选择框,值将传递给搜索

字符串逗号分隔IE:面部护理,头发,游泳池等


可以有人告诉我如何解析这个字符串,然后建立一个选择

语句,我可以搜索Facials或Hair OR池

我一直在搜索并且可以找不到任何可以做到的事情。


提前致谢

解决方案

我建议你一步一步。

看看Split()把它拆开

看一下FOR循环来附加值。



只需取命令分隔值并直接将其附加到SQL中

,并带有

" select ... .. where ..... IN(& yourValues&")......"


-

Curt Christianson

所有者/首席开发人员,DF软件

网站: http://www.Darkfalz.com

博客: http://blog.Darkfalz.com

" RH" < rh@bloofrog.n​​et>在消息中写道

news:ut ************** @ TK2MSFTNGP09.phx.gbl ...

< SELECT name = " txtServices"大小= QUOT; 3英寸多个>
< OPTION值= QUOT;按摩">按摩< / OPTION>
< OPTION值= QUOT;面部护理">面部护理< / OPTION>
< OPTION值=< Wet&干燥身体治疗>湿& amp; amp;干体
治疗< / OPTION>
< OPTION值= QUOT;医疗护理">医药治疗和LT; / OPTION>
< OPTION值= QUOT;钉,修脚,修指甲" >钉,修脚,
修指甲< / OPTION>
< OPTION值= QUOT;毛发">头发和LT; / OPTION>
< OPTION值= QUOT;池">池< / OPTION>
< OPTION值= QUOT;打蜡">打蜡< / OPTION>
< OPTION值= QUOT;化妆">化妆< / OPTION> < < OPTION value =" Aromatherapy"> Aromatherapy< / OPTION>
< OPTION value =" Specialties"> Specialties< / OPTION>
< OPTION value ="着色>着色< / OPTION>
< OPTION value =" Fitness&营养咨询>>健身&营养咨询< / OPTION>
< / SELECT>< / TD>

由于这是一个多重选择框值被传递给搜索
字符串逗号分隔IE:面部护理,头发,池等

任何人都可以告诉我如何解析这个字符串然后构建一个选择
语句,我可以搜索面部护理或头发或游泳池
我一直在搜索,找不到任何可以做到这一点。

提前致谢


真的很脏的方法;


SomeString =" x,y,z"


Do While Not Instr(1,SomeString,",vbTextCompare)

MyString = StripIt(SomeString)

Response.Write MyString &安培; "< br>"

循环


功能StripIt(TheStirng)

Dim strTemp

strTemp = Split(TheString,",")

StripIt = path(UBound(strTemp))

结束函数


-


问候


Steven Burn

Ur IT Mate Group
www.it-mate.co.uk


保持免费!

" RH" < rh@bloofrog.n​​et>在消息中写道

news:ut ************** @ TK2MSFTNGP09.phx.gbl ...

< SELECT name = " txtServices"大小= QUOT; 3英寸多个>
< OPTION值= QUOT;按摩">按摩< / OPTION>
< OPTION值= QUOT;面部护理">面部护理< / OPTION>
< OPTION值=< Wet&干燥身体治疗>湿& amp; amp;干体
治疗< / OPTION>
< OPTION值= QUOT;医疗护理">医药治疗和LT; / OPTION>
< OPTION值= QUOT;钉,修脚,修指甲" >钉,修脚,
修指甲< / OPTION>
< OPTION值= QUOT;毛发">头发和LT; / OPTION>
< OPTION值= QUOT;池"> Pools< / OPTION>
< OPTION value =" Waxing"> Waxing< / OPTION>
< OPTION value =" Make-up"> Make-up< / OPTION> < < OPTION value =" Aromatherapy"> Aromatherapy< / OPTION>
< OPTION value =" Specialties"> Specialties< / OPTION>
< OPTION value ="着色>着色< / OPTION>
< OPTION value =" Fitness&营养咨询>>健身&营养咨询< / OPTION>
< / SELECT>< / TD>

由于这是一个多重选择框值被传递给搜索
字符串逗号分隔IE:面部护理,头发,池等

任何人都可以告诉我如何解析这个字符串然后构建一个选择
语句,我可以搜索面部护理或头发或游泳池
我一直在搜索,找不到任何可以做到这一点。

提前致谢


谢谢Curt - 我已经尝试了第二个选项,如果你只有它可以工作,那么
选择了一个项目来搜索,它不是你有2个。


数据库中的每个字段只有一个值,所以一个是(Spa |

服务) 99 |头发,99 |游泳池,100 |头发,100 |美甲等。


如果我从列表中选择游泳池,我会得到温泉99&水疗中心100,如果我选择头发&

游泳池,我应该得到水疗中心99&水疗中心100


所以,我已经走了另一条路。但是我不知道如何制作一个

OR声明当我做Split时我得到的数组。

(我之前从未这样做过,所以我对语法很困惑)


从我可以在此基础上挖掘信息,我必须使用一个循环来构建一个或一个语句,然后我可以进入我的查询。


我该怎么办?

Robyn


" Curt_C [MVP]" < software_AT_darkfalz.com>在留言中写道

新闻:eC **************** @ TK2MSFTNGP11.phx.gbl ...

我建议你一步一步。
看看Split()把它拆开
看一个FOR循环来附加值。
或者
只需要命令分隔值并直接将其附加到SQL中
select ..... where ..... IN(& yourValues&")...... ;

-
Curt Christianson
所有者/首席开发人员,DF-Software
网站: http://www.Darkfalz.com
博客: http://blog.Darkfalz.com

" RH" < rh@bloofrog.n​​et>在消息中写道
新闻:ut ************** @ TK2MSFTNGP09.phx.gbl ...

< SELECT name =" txtServices"大小= QUOT; 3英寸多个>
< OPTION值= QUOT;按摩">按摩< / OPTION>
< OPTION值= QUOT;面部护理">面部护理< / OPTION>
< OPTION值=< Wet&干燥身体治疗>湿& amp; amp;干体
治疗< / OPTION>
< OPTION值= QUOT;医疗护理">医药治疗和LT; / OPTION>
< OPTION值= QUOT;钉,修脚,修指甲" >钉,修脚,
修指甲< / OPTION>
< OPTION值= QUOT;毛发">头发和LT; / OPTION>
< OPTION值= QUOT;池"> Pools< / OPTION>
< OPTION value =" Waxing"> Waxing< / OPTION>
< OPTION value =" Make-up"> Make-up< / OPTION> < < OPTION value =" Aromatherapy"> Aromatherapy< / OPTION>
< OPTION value =" Specialties"> Specialties< / OPTION>
< OPTION value ="着色>着色< / OPTION>
< OPTION value =" Fitness&营养咨询>健身
& amp;营养咨询< / OPTION>
< / SELECT>< / TD>

由于这是一个多重选择框,值将传递给搜索
字符串逗号分隔的IE :面部护理,头发,泳池等

任何人都可以告诉我如何解析这个字符串,然后建立一个选择
语句,我可以搜索面部护理或头发或游泳池
我'我一直在搜索,找不到任何只需
的东西。
提前致谢




<SELECT name="txtServices" size="3" multiple>
<OPTION value="Massage">Massage</OPTION>
<OPTION value="Facials">Facials</OPTION>
<OPTION value="Wet & Dry Body Treatments">Wet &amp; Dry Body
Treatments</OPTION>
<OPTION value="Medical Treatments">Medical Treatments</OPTION>
<OPTION value="Nails, Pedicures, Manicures">Nails, Pedicures,
Manicures</OPTION>
<OPTION value="Hair">Hair</OPTION>
<OPTION value="Pools">Pools</OPTION>
<OPTION value="Waxing">Waxing</OPTION>
<OPTION value="Make-up">Make-up</OPTION>
<OPTION value="Aromatherapy">Aromatherapy</OPTION>
<OPTION value="Specialties">Specialties</OPTION>
<OPTION value="Tinting">Tinting</OPTION>
<OPTION value="Fitness & Nutritional Counselling">Fitness &amp;
Nutritional Counselling</OPTION>
</SELECT></TD>

Since this is a muliple select box the values are passed to the search
string comma delimited IE: facials, hair, pools etc

Can anyone tell me how to parse this string and then build a select
statement whereby I can search for Facials OR Hair OR pools
I''ve been searching all over and can''t find anything that does just this.

Thanks in advance

解决方案

I suggest you take this one step at a time.
Look at Split() to break it apart
Look at a FOR loop to append the values.
OR
Just take the command delimited value and append it into the SQL directly
with a
"select.....where.....IN (" & yourValues & ")......"

--
Curt Christianson
Owner/Lead Developer, DF-Software
Site: http://www.Darkfalz.com
Blog: http://blog.Darkfalz.com
"RH" <rh@bloofrog.net> wrote in message
news:ut**************@TK2MSFTNGP09.phx.gbl...

<SELECT name="txtServices" size="3" multiple>
<OPTION value="Massage">Massage</OPTION>
<OPTION value="Facials">Facials</OPTION>
<OPTION value="Wet & Dry Body Treatments">Wet &amp; Dry Body
Treatments</OPTION>
<OPTION value="Medical Treatments">Medical Treatments</OPTION>
<OPTION value="Nails, Pedicures, Manicures">Nails, Pedicures,
Manicures</OPTION>
<OPTION value="Hair">Hair</OPTION>
<OPTION value="Pools">Pools</OPTION>
<OPTION value="Waxing">Waxing</OPTION>
<OPTION value="Make-up">Make-up</OPTION>
<OPTION value="Aromatherapy">Aromatherapy</OPTION>
<OPTION value="Specialties">Specialties</OPTION>
<OPTION value="Tinting">Tinting</OPTION>
<OPTION value="Fitness & Nutritional Counselling">Fitness &amp;
Nutritional Counselling</OPTION>
</SELECT></TD>

Since this is a muliple select box the values are passed to the search
string comma delimited IE: facials, hair, pools etc

Can anyone tell me how to parse this string and then build a select
statement whereby I can search for Facials OR Hair OR pools
I''ve been searching all over and can''t find anything that does just this.

Thanks in advance



The really dirty method would be;

SomeString = "x, y, z"

Do While Not Instr(1, SomeString, ",", vbTextCompare)
MyString = StripIt(SomeString)
Response.Write MyString & "<br>"
Loop

Function StripIt(TheStirng)
Dim strTemp
strTemp = Split(TheString, ",")
StripIt = path(UBound(strTemp))
End Function

--

Regards

Steven Burn
Ur I.T. Mate Group
www.it-mate.co.uk

Keeping it FREE!
"RH" <rh@bloofrog.net> wrote in message
news:ut**************@TK2MSFTNGP09.phx.gbl...

<SELECT name="txtServices" size="3" multiple>
<OPTION value="Massage">Massage</OPTION>
<OPTION value="Facials">Facials</OPTION>
<OPTION value="Wet & Dry Body Treatments">Wet &amp; Dry Body
Treatments</OPTION>
<OPTION value="Medical Treatments">Medical Treatments</OPTION>
<OPTION value="Nails, Pedicures, Manicures">Nails, Pedicures,
Manicures</OPTION>
<OPTION value="Hair">Hair</OPTION>
<OPTION value="Pools">Pools</OPTION>
<OPTION value="Waxing">Waxing</OPTION>
<OPTION value="Make-up">Make-up</OPTION>
<OPTION value="Aromatherapy">Aromatherapy</OPTION>
<OPTION value="Specialties">Specialties</OPTION>
<OPTION value="Tinting">Tinting</OPTION>
<OPTION value="Fitness & Nutritional Counselling">Fitness &amp;
Nutritional Counselling</OPTION>
</SELECT></TD>

Since this is a muliple select box the values are passed to the search
string comma delimited IE: facials, hair, pools etc

Can anyone tell me how to parse this string and then build a select
statement whereby I can search for Facials OR Hair OR pools
I''ve been searching all over and can''t find anything that does just this.

Thanks in advance



Thanks Curt - I''ve tried the second option, and while it works if you only
have one item selected to search for, it doesn''t if you have 2.

Each field in the database only has one value, so one would be (Spa |
Services) 99 | hair, 99 | pools, 100 | hair, 100| Manicures etc.

If I select pools from the list, I get spa 99 & spa 100, If I select hair &
Pools, I should get spa 99 & spa 100

So, I''ve gone the other route.but what I can''t figure out is how to make an
OR statement out of the array I get when I do Split.
(I''ve never done this before so I''m kindof confused with the syntax)

From what I can dig up information wise on this, I have to use a loop to
build an or statement that I can then pull into my query.

How do I do that??
Robyn


"Curt_C [MVP]" <software_AT_darkfalz.com> wrote in message
news:eC****************@TK2MSFTNGP11.phx.gbl...

I suggest you take this one step at a time.
Look at Split() to break it apart
Look at a FOR loop to append the values.
OR
Just take the command delimited value and append it into the SQL directly
with a
"select.....where.....IN (" & yourValues & ")......"

--
Curt Christianson
Owner/Lead Developer, DF-Software
Site: http://www.Darkfalz.com
Blog: http://blog.Darkfalz.com
"RH" <rh@bloofrog.net> wrote in message
news:ut**************@TK2MSFTNGP09.phx.gbl...

<SELECT name="txtServices" size="3" multiple>
<OPTION value="Massage">Massage</OPTION>
<OPTION value="Facials">Facials</OPTION>
<OPTION value="Wet & Dry Body Treatments">Wet &amp; Dry Body
Treatments</OPTION>
<OPTION value="Medical Treatments">Medical Treatments</OPTION>
<OPTION value="Nails, Pedicures, Manicures">Nails, Pedicures,
Manicures</OPTION>
<OPTION value="Hair">Hair</OPTION>
<OPTION value="Pools">Pools</OPTION>
<OPTION value="Waxing">Waxing</OPTION>
<OPTION value="Make-up">Make-up</OPTION>
<OPTION value="Aromatherapy">Aromatherapy</OPTION>
<OPTION value="Specialties">Specialties</OPTION>
<OPTION value="Tinting">Tinting</OPTION>
<OPTION value="Fitness & Nutritional Counselling">Fitness &amp; Nutritional Counselling</OPTION>
</SELECT></TD>

Since this is a muliple select box the values are passed to the search
string comma delimited IE: facials, hair, pools etc

Can anyone tell me how to parse this string and then build a select
statement whereby I can search for Facials OR Hair OR pools
I''ve been searching all over and can''t find anything that does just this.
Thanks in advance




这篇关于字符串解析查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆