SQL中多条件查询括号的用途

更新时间:2023-07-23 09:07:28 阅读: 评论:0

SQL中多条件查询括号的⽤途
界⾯:
代码
lect
争吵的英文
id,routeName,routeCharacteristic,routeIntroductions,costDetail,participate,click,routeCategory,dineMenu,weather,isEnable,addPerson,addDate,competitiveProducts,luxury,onVacatio from Tab_TouristTrack
where (addDate>=@beginDate or@beginDate='') and (addDate<=@endDate or@endDate='')
and (routeName like@routeName or@routeName='')
and (newProduct=1or competitiveProducts=1or luxury=1or onVacation=1or characteristic=1
or specialPreference=1or hotRecommend=1or overflow=1or ason=1)
and (priority=0or priority is null)
以上语句是⼀个多条件查询语句,假如没有⽤括号分开的话,那么只有所有条件都为真才会查出数据库中所满⾜条件的⾏,但是这不是我所想要的,所以才需要⽤括号如:
(addDate>=@beginDate or@beginDate=''),意思是当⽤户输⼊数据时,则根据addDate>=@beginDate的条件来查询数据库中满⾜条件的数据,如果⽤户不输⼊任何数据,那么销售人员英文
这个时候⽂本框所得到的值则为:""-->空的字符串,使⽤@beginDate='' (变成sql语句:' '=' ' )也能使这个where⼦句满⾜条件,否则的话很难实现像这样的多条件语句查询.
在来看下这条⼦句:
(newProduct=1or competitiveProducts=1or luxury=1or onVacation=1or characteristic=1
or specialPreference=1or hotRecommend=1or overflow=1or ason=1)
这⾥加括号的意思是当满⾜前⾯⼦句所有条件的情况下并且还要满⾜括号内这些字段⾄少有⼀个为1的数据.春季开学典礼主持词
(priority=0or priority is null)
这⾥加括号的意思是当满⾜前⾯⼦句所有条件的情况下并且还要满⾜括号priority=0或者priority为空的数据
如果在⼦句:
(priority=0or priority is null)
中不加括号的话,那么priority前满⾜所有的条件下,在使⽤or priority is null这样就不是我们要的数据了.
这条⼦句加括号也是和上⾯⼦句同⼀个意思
(newProduct=1or competitiveProducts=1or luxury=1or onVacation=1or characteristic=1
or specialPreference=1or hotRecommend=1or overflow=1or ason=1)
使⽤括号的⽬的就是将⼀⼩段sql⼦句作为⼀个整体来使⽤.
简单的说就是在满⾜前⾯所有⼦句的情况下还要满⾜(priority=0or priority is null)返回为ture的数据.
得到⽂本中输⼊的值调⽤后台数据库代码
private void PriorityBinds()
{
gvPriority.DataKeyNames =new String[] { "id" };take英语
gvPriority.DataSource = tts.PriorityQuery(ddlType.SelectedValue,txtBeginDate.Text,txtEndDate.Text
,txtTouristTrackName.Text,rblPriority.SelectedValue);
gvPriority.DataBind();
畦怎么读音}
代码
public DataTable PriorityQuery(String MenuType, String beginDate, String endDate, String routeName, String priority)
{
StringBuilder strSql =new StringBuilder();
strSql.Append("
lect id,routeName,routeCharacteristic,routeIntroductions,costDetail,participate,click,routeCategory,dineMenu,weather,isEnable,addPerson,addDate,competitiveProducts,luxury,onV ");
strSql.Append(" from Tab_TouristTrack ");
strSql.Append(" where (addDate>=@beginDate or @beginDate='') and (addDate<=dateadd(dd,1,@endDate) or @endDate='')");            strSql.Append(" and (routeName like @routeName or @routeName='')");
if (MenuType !="all")
{
strSql.Append(" and "+MenuType +"=1");
}
el
{
strSql.Append(" and (newProduct=1 or competitiveProducts=1 or luxury=1 or onVacation=1 or characteristic=1");
strSql.Append(" or specialPreference=1 or hotRecommend=1 or overflow=1 or ason=1)");
}
if (priority!="all")
{
if (priority=="1")
{
手指脱皮怎么回事strSql.Append(" and priority=1");
}
el何足挂齿的意思
{
strSql.Append(" and (priority=0 or priority is null)");
}
}
strSql.Append(" order by priority desc");
SqlParameter[] param =new SqlParameter[]
{
new SqlParameter("@beginDate",beginDate),
new SqlParameter("@endDate",endDate),
new SqlParameter("@routeName","%"+routeName+"%")
};
return SQLLinkDataba.Query(strSql.ToString(),param).Tables[0];
}
分类: ,警示片
+加关注
1
posted @ 2009-12-15 13:28 阅读( 8640) 评论( 0)

本文发布于:2023-07-23 09:07:28,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1093121.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:条件   括号   查询   数据库   语句
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图