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

北京 设计 网站建设seo排名工具有哪些

北京 设计 网站建设,seo排名工具有哪些,专业外贸网站制作公司,青浦企业网站制作查询数据-过滤数据 ​专栏内容#xff1a; postgresql内核源码分析手写数据库toadb并发编程 ​开源贡献#xff1a; toadb开源库 个人主页#xff1a;我的主页 管理社区#xff1a;开源数据库 座右铭#xff1a;天行健#xff0c;君子以自强不息#xff1b;地势坤#…查询数据-过滤数据 ​专栏内容 postgresql内核源码分析手写数据库toadb并发编程 ​开源贡献 toadb开源库 个人主页我的主页 管理社区开源数据库 座右铭天行健君子以自强不息地势坤君子以厚德载物. 系列文章 入门准备postgrersql基础架构快速使用初始化集群数据库服务管理psql客户端使用pgAdmin图形化客户端数据库的使用创建数据库数据库操作表的使用表的创建表的操作数据查询数据查询多表联合查询数据操作插入数据的方式 文章目录 查询数据-过滤数据系列文章前言 概述 where 子句介绍 操作符 案例实践 字符串匹配 范围比较 总结 结尾 前言 postgresql 数据库是一款通用的关系型数据在开源数据库中能与商业数据媲美在业界也越来越流行。 因为是开源数据库不仅公开源码还有很多使用案例好用的插件所以它的慢慢变成了数据库的先驱和标准通过postgresql可以很好从使用到原理彻底搞懂 如果是学习编程也可以学到丰富的编程知识数据结构编程技巧它里面还有很多精妙的架构设计分层思想可以灵活定制的思想。 本专栏主要介绍postgresql 入门使用数据库维护管理通过这些使用来了解数据库原理慢慢了解postgresql是什么样的数据库能做那些事情以及如何做好服务最关键的是这些知识都是面试的必备项。 概述 在使用SQL查询数据时一般不会查询全部数据而是使用条件或者很多条件的组合来缩小结果集的范围甚至精准查询到想要的数据。本文将介绍postgresql数据库中如何筛选过滤数据如何设置条件以及有那些操作符可以使用。 where 子句介绍 一般的查询SQL结构如下 SELECT ... FROM ... WHERE ... ORDER BY... ; 一般把每个关键字如SELECT叫做一个子句如select子句from 子句where子句orderby子句等等如果要对数据行进行过滤和筛选就要用到where子句。 在postgresql 中子句的执行顺序是 from子句-where子句-select子句- orderby子句 按照实际执行动作就是先扫描表然后按条件进行过滤再进行投影运算最后对结果集进行排序。 这就会存在select子句中的列的别名在where子句中是不能使用的相反from子句和where子句中表的别名在select子句中是可以使用的。 where子句它的内容是一个个条件表达式最终计算结果是一个布尔值也就是’true’,false’或者不确定 也就是说当条件值为’true’时数据表中的行才会被选入结果集当中当不会真时就会被过滤掉。 操作符 在条件表达式中要使用一些操作符比如比较运算符逻辑运算符等才能组成表达式我们常用的操作符有以下 比较运算符 运算符描述相等或者!不相等大于大于等于小于小于等于 比较运算符有些类似于其它编程语言中的比较运算符用于两个列、列与常量或者常量与常量的比较。 逻辑运算符 运算符描述AND逻辑与OR逻辑或NOT逻辑非取反 集合操作 运算符描述BETWEEN ... AND ...在 AND前后指定的范围内则返回trueIN在指定的集合中时返回true 其它运算符 运算符描述LIKE模式配匹通配符有%,_IS NULL值为空时返回true 案例实践 下面我们一起来实践一下吧先准备数据。 -- create table create table student(sid int primary key,sname varchar,sage int,ssex char,ctime timestamp);-- insert data insert into student values(1,lilei,18,m,2023/9/20),(2,liming,19,m,2022/8/20),(3,zhanghua,20,f,2021/8/29),(4,guodong,21,f,2020/10/1);再创建索引用于后面案例分析 create index idx_sname ON student (sname); create index idx_ssex on student (ssex );查询一下所有数据 postgres# select * from student;sid | sname | sage | ssex | ctime ------------------------------------------------1 | lilei | 18 | m | 2023-09-20 00:00:002 | liming | 19 | m | 2022-08-20 00:00:003 | zhanghua | 20 | f | 2021-08-29 00:00:004 | guodong | 21 | f | 2020-10-01 00:00:00 (4 rows) 字符串匹配 先来看一下字符串的条件因为它常常会用到但是也常常会出现问题。 在我们对字符串进行模糊查找时会用到like 和通配符的方式通配符在postgresql中有两个 百分号 %, 匹配任意字符和长度下划线 _, 匹配任意的一个字符 如果字符串中包括以上通配符需要使用转义字符’进行转义 查找li开头的字符串如下 postgres# select * from student where sname like li%;sid | sname | sage | ssex | ctime ----------------------------------------------1 | lilei | 18 | m | 2023-09-20 00:00:002 | liming | 19 | m | 2022-08-20 00:00:00 (2 rows) 查找li开头的字符串并且字符长度确定时如下 postgres# select * from student where sname like li_;sid | sname | sage | ssex | ctime ------------------------------- (0 rows)postgres# select * from student where sname like li___;sid | sname | sage | ssex | ctime ---------------------------------------------1 | lilei | 18 | m | 2023-09-20 00:00:00 (1 row)注意虽然模糊匹配非常好用但是我们还是要尽量减少使用因为它会让该列上的索引失效如下所示 postgres# explain select * from student where sname like li___;QUERY PLAN ----------------------------------------------------------Seq Scan on student (cost0.00..121.05 rows1 width56)Filter: ((sname)::text ~~ li___::text) (2 rows)postgres# explain select * from student where sname like lilei;QUERY PLAN --------------------------------------------------------------------------Index Scan using idx_sname on student (cost0.13..8.15 rows1 width56)Index Cond: ((sname)::text lilei::text)Filter: ((sname)::text ~~ lilei::text) (3 rows) 当我们使用了通配符之后查询计划变成了Seq scan也就是顺序扫描而不使用通配符时采用的是index scan也就是索引扫描。 在一些字符串作为键值的业务逻辑当中如果发现业务性能下降时可以按此方法进行排查是否存在索引失效的问题。 范围比较 查找sage在17到20之间的数据这个范围可以有两种写法 一种使用比较运算符和逻辑运算符 postgres# select * from student where sage 17 and sage 20;sid | sname | sage | ssex | ctime ------------------------------------------------1 | lilei | 18 | m | 2023-09-20 00:00:002 | liming | 19 | m | 2022-08-20 00:00:003 | zhanghua | 20 | f | 2021-08-29 00:00:00 (3 rows)另一种使用between and运算符 postgres# select * from student where sage between 17 and 20;sid | sname | sage | ssex | ctime ------------------------------------------------1 | lilei | 18 | m | 2023-09-20 00:00:002 | liming | 19 | m | 2022-08-20 00:00:003 | zhanghua | 20 | f | 2021-08-29 00:00:00 (3 rows) 可以将多个条件使用 逻辑运算符连接起来形成多条件过滤。 总结 通过where子句中的条件可以达到过滤查询的效果其中使用不同的运算符组合可以形成多个条件表达式同时在使用过程中避免索引失效的情况尤其在大数据量下时索引失效可能是灾难级的。 结尾 非常感谢大家的支持在浏览的同时别忘了留下您宝贵的评论如果觉得值得鼓励请点赞收藏我会更加努力 作者邮箱studysenllang.onaliyun.com 如有错误或者疏漏欢迎指出互相学习。 注未经同意不得转载
http://www.pierceye.com/news/296519/

相关文章:

  • 提供手机网站制作公司网站建设与域名建设
  • 网站建设计入哪个明细科目网站公众号建设工具
  • 自己做公司网站难吗域名备案管局审核要多久
  • 电子商务网站建设花费百度公司的业务范围
  • 虹口网站建设公司在线观看视频网站怎么做
  • 哈尔滨市建设安全监察网站_首页新津网站建设
  • 安卓 网站整站下载网址导航怎么更换
  • 数据展示网站模板备案 非网站备案
  • 邯郸做网站推广找谁jsp做的网站代码
  • php网站开发怎么接私活全能医院网站管理系统
  • 观止网站建设10元建站
  • 什么网站做聚乙烯醇好的三亚旅游攻略
  • 建设网站目的直播间网站开发
  • 网站项目评价怎么在网站上做签到
  • 深圳网站建设制作哪家好长春网站开发培训
  • 模板下载网站网络公司网站开发
  • 广州市酒店网站设计重庆网站seo设计
  • p2p网站如何建设网站建设 源美设计
  • 电商网站建设图片ps网站首页设计图
  • 网站优化简历模板用土豆做美食的视频网站
  • 帮企业建设网站销售微信朋友圈广告在哪里做
  • 曲阜做网站的公司wordpress两个域名
  • 做设备租赁的网站如何把自己做的网站发布到网上
  • 做网站运营有前景吗关于网站建设意见和建议
  • 如何给网站的关键词做排名南海做网站公司
  • 仿站软件邢台手机网站建设价格
  • 学校网站开发与设计什么是网络营销促销?
  • 胶州网站搭建企业wordpress站内信群发
  • WordPress做的网站源代码网站备案失效
  • 承德网站制作与建设wordpress h5播放器