老大帮忙!!!SQL语句

XiaoBai2222 2004-01-07 01:04:33
<% function display(a,b,c,d,e,f)
{
if (c!=0)
{
c="cpuType ="+Request.Form("cpuType")+" and "
}
else{c="";}
if (d!=0)
{
d="cpuSpeed ="+Request.Form("cpuSpeed")+" and "
}
else{d="";}
if (e!=0)
{
e="screenSize ="+Request.Form("screenSize")+" and "
}
else{e="";}

if (f!=0)
{
f="price ="+Request.Form("price")+" and "
}else{
f=""
}

if (a!=0)
{
a="company ="+Request.Form("company")+" and "
}
else{a="";}
if (b!=0)
{
b="version ="+Request.Form("version")
}
else{b="";}

return c+d+e+f+a+b
}
%>
//////////////////////////////////////////////////
6个参数要组合成sql语句(参数如果为0,就不用考虑了),老大有时间的话,帮帮我!//
//////////////////////////////////////////////////
...全文
39 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainwalking 2004-01-07
  • 打赏
  • 举报
回复
解决了我也插一句
我觉得最简单就一句:
sql=left(sql,len(sql)-4)
就把“ and”搞掉了啊
XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
谢谢个位!弄好了
///////////////////////////////////////////////////////////////////
致敬
XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
这个方法在SQL语句的前面有“ and”,老大有没有测量字符串长度的VBScript的脚本?我想判断一个这个字符串的长度,好把" and"删掉
Rgbvke 2004-01-07
  • 打赏
  • 举报
回复
那用在vbScript裡也可以呀,CALL它就可以了,ASP語法也可以在VBScript中用
XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
我不想那么做呀
ycted 2004-01-07
  • 打赏
  • 举报
回复
call
Rgbvke 2004-01-07
  • 打赏
  • 举报
回复
你寫在ASP裡不行嗎?
XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
这个方法可以,但怎么用VBScript调用上面的函数呀?老大们,我忘了,帮个忙好了
shleo 2004-01-07
  • 打赏
  • 举报
回复
…………

你and放前面,最前面加一个一定会成立的条件不就行了?
XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
我只会ASP中的JSscrit调用函数,如何用VBScript调用上面的function display
/////////////////////////////////////////////////////////////////
c = display(company,version,cpuType,cpuSpeed,screenSize,price)
Response.Write(c);
////////////////////////////////////////////////////////////////
上面的代码怎么调用呀?
Tal 2004-01-07
  • 打赏
  • 举报
回复
<%
function display(a,b,c,d,e,f)
if c <> "0" then
c = " and cpuType =" & Request.Form("cpuType") & " "
else
c=""
end if
if d <> "0" then
d = " and cpuSpeed =" & Request.Form("cpuSpeed") & " "
else
d = ""
end if
if e <> "0" then
e = " and screenSize =" & Request.Form("screenSize") & " "
else
e = ""
end if
if f <> "0" then
f = " and price =" & Request.Form("price") & " "
else
f = ""
end if
if a <> "0" then
a = " and company =" & Request.Form("company") & " "
else
a = ""
end if
if b <> "0" then
b = " version =" & Request.Form("version")
else
b = ""
end if
return "1=1 " & c & d & e & f & a & b
end function
%>
Tal 2004-01-07
  • 打赏
  • 举报
回复
<%
function display(a,b,c,d,e,f)
if c <> "0" then
c = " cpuType =" & Request.Form("cpuType") & " and "
else
c=""
end if
if d <> "0" then
d = " cpuSpeed =" & Request.Form("cpuSpeed") & " and "
else
d = ""
end if
if e <> "0" then
e = " screenSize =" & Request.Form("screenSize") & " and "
else
e = ""
end if
if f <> "0" then
f = " price =" & Request.Form("price") & " and "
else
f = ""
end if
if a <> "0" then
a = " company =" & Request.Form("company") & " and "
else
a = ""
end if
if b <> "0" then
b = " version =" & Request.Form("version")
else
b = ""
end if
return c & d & e & f & a & b
end function
%>
13901081291 2004-01-07
  • 打赏
  • 举报
回复
你也够可以的,AND放到前边不就结了, 如:

SQL = "SELECT * FROM EMP WHERE EMP_ID <> ''"

IF TRIM(SEX) <> "" NAD NOT ISNULL(SEX) THEN
SQL = SQL + " AND SEX = '"&SEX&"'"
END IF

其他依次类推。

XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
结果不是我想要的,这样的SQL语句有毛病的!你想“select * from emp where company="联想" and ”怎么用啊
xeimm 2004-01-07
  • 打赏
  • 举报
回复
能实现你的目的不就行了?
XiaoBai2222 2004-01-07
  • 打赏
  • 举报
回复
不是的,SQL语句虽然可以组合,但你不知用户不选哪一个东西呀!所以最后总是有个" and",这样不爽呀,怎么办???想编写一个一段程序删除它,但不知怎么写?
celerylhl 2004-01-07
  • 打赏
  • 举报
回复
在最前面加上一个永远不成立的条件,如: "1=2 or "然后再和下面的联接,这样子即使没有后面的内容也不报错
xieyj 2004-01-07
  • 打赏
  • 举报
回复
给一分,我真服了你,你自己不是已经串起来了吗?

28,407

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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