当前位置: 首页 > news >正文

军事最新军事新闻视频附子seo教程

军事最新军事新闻视频,附子seo教程,小程序开放平台,最新网站制作公司哪个好5-高级数据过滤 通过组合WHERE子句,建立功能更强的检索语句。 5.1-组合WHERE子句 前面写的都是单一条件下的WHERE子句,SQL语句允许给出多个WHERE子句来组合检索,这些WHERE子句通过AND子句或者OR子句进行连接。 操作符(operato…

5-高级数据过滤

通过组合WHERE子句,建立功能更强的检索语句。

5.1-组合WHERE子句

前面写的都是单一条件下的WHERE子句,SQL语句允许给出多个WHERE子句来组合检索,这些WHERE子句通过AND子句或者OR子句进行连接。

操作符(operator) 用来联结或改变WHERE子句中的子句的关键字,也称为逻辑操作符(logical operator)。

5.1.1 AND操作符

要通过不止一个列进行过滤,可以通过AND操作符进行连接。

select prod_id,prod_price,prod_name
from products
where vend_id = 'DLL01' AND prod_price <= 4;

上述SQL语句用于检索由DLL01供应商提供的价格小于等于4元的所有产品的价格和名称。该条语句包含两个查询条件,一个是供应商id为DLL01,另一个条件为价格小于等于4,使用AND进行连接。

上述语句使用了一个AND连接符,因此只有两个过滤条件。可以增加多个过滤条件,每个条件之间都要使用AND连接符进行连接。

5.1.2 OR连接符

OR操作符与AND操作符正好相反,它指示DBMS检索匹配任一条件的行。事实上,许多DBMS在OR WHERE子句的第一个条件得到满足的情况下,就不再计算第二个条件了(在第一个条件满足时,不管第二个条件是否满足,相应的行都将被检索出来)。

select prod_id,prod_price,prod_name
from products
where vend_id = 'DLL01' OR vend_id = 'BRS01';

 

上述SQL语句通过OR连接符进行检索,只要满足任意一个条件,就会将数据纳入检索范围。

5.1.3 求值顺序

WHERE子句可以包含很多的AND和OR操作符。但是这么做可能会有一些小问题。

例如:想要列出价格为10元以上,且有DLL01或者BRS01制造的所有产品

select prod_id,prod_price,prod_name
from products
where vend_id  = 'DLL01' or vend_id = 'BRS01' and prod_price >= 10;

 

可以看到,价格低于十元的产品也被输出了出来。

原因 在于求值顺序,SQL在处理OR操作符前,会优先处理AND操作符。当SQL看到上述语句时,会理解为:由供应商BRS01提供的10元以上的产品,以及由供应商DLL01提供的所有产品,而不管其价格如何。BRS01和价格大于等于10优先组合在一起。

解决办法是使用圆括号对操作符进行分组:

select prod_id,prod_price,prod_name
from products
where (vend_id = 'DLL01' OR vend_id = 'BRS01') AND prod_price >= 10;

 

圆括号具有比AND或OR操作符更高的优先级,所以DBMS首先过滤圆括号内的OR条件。

注意:任何时候使用具有AND和OR操作符的WHERE子句,都应该使用圆括号明确地分组操作符。不要过分依赖默认求值顺序,即使它确实如你希望的那样。使用圆括号没有什么坏处,它能消除歧义。

5.2-IN操作符

IN操作符用来指定条件范围,范围中的每个条件都可以进行匹配。

select prod_name,prod_price
from products
where vend_id IN ('DLL01','BRS01')
order by prod_name;

 

上述语句检索由供应商DLL01和供应商BRS01所提供的产品。

IN操作符完成的功能与OR操作符完成的功能类似。

select prod_name,prod_price
from products
where vend_id = 'DLL01' OR vend_id = 'BRS01'
order by prod_name;

  两个语句输出的内容相同。

使用IN操作符的优点:

  • 有很多合法选项时,IN操作符更为清晰明了。

  • 在与其他AND和OR操作符组合使用IN时,求值顺序更容易理解。

  • IN操作符一般比一组OR操作符执行速度更快。

  • IN最大的优点是,可以包含其他select语句,能够更动态的建立where子句。

5.3-NOT操作符

WHERE子句中的NOT操作符有且只有一个作用,否定其后跟随的任何条件。

NOT从不单独使用,总是与其他操作符一起使用。

select prod_name
from products
where NOT vend_id = 'DLL01'
order by prod_name;

检索所有vend_id不是DLL01的行。

上面的语句也可以使用"<>"或者"!="来实现。

select prod_name
from products
where vend_id <> 'DLL01'
order by prod_name;select prod_name
from products
where vend_id != 'DLL01'
order by prod_name;

对于简单的where语句来说,使用NOT操作符确实没有多少优势,但是如果SQL语句比较复杂的话,NOT就非常有用。

例如,在与IN操作符联合使用时,NOT可以非常简单地找出与条件列表不匹配的行。

http://www.tj-hxxt.cn/news/82392.html

相关文章:

  • 门户网站开发价格网上国网推广
  • 电子商务网站建设解决方案网络黄页推广软件哪个好用
  • 西维科技做网站怎么样百度推广营销
  • 怎么做代刷网站百度搜索引擎优化怎么做
  • 好看的企业网站源码新闻最新热点
  • 台州自助建站在线咨询如何提高网站搜索排名
  • 学校网站建设的背景本周的新闻大事10条
  • 桐乡 网站建设网络营销模式
  • 摄影师网站建设国际军事新闻
  • 可爱风格网站360排名检测
  • 常用的建站工具有哪些网络策划
  • 网站如何做sem湖南网络推广排名
  • 企业网站营销网站windows优化大师免费版
  • 怎样用代码制作网站衡阳seo外包
  • 西安南郊网站建设全网推广系统
  • 58同城枣庄网站建设其他搜索引擎
  • 酷虎云建站工具网络营销有哪些内容
  • 网站后台这么做视频教程seo网站排名查询
  • 松原网站建设网络营销课程大概学什么内容
  • 珠宝网站策划培训机构怎么找
  • 长春电商网站建设费用百度网页版主页
  • 同一个域名两个网站站长工具查询seo
  • 闵行区网站自己怎么开网站
  • 淄博企业网站建设公司seo的含义是什么意思
  • QQ可以在网站做临时会话么seo的基础是什么
  • 怎么找做网站客服的工作搜狗首页排名优化
  • 阿里巴巴上做网站要多少钱百度手机助手下载免费安装
  • 如何学建设网站seo创业
  • 利用百度图片做网站外链怎样打百度人工客服热线
  • 平面设计素材网站排名互动营销经典案例