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

电子商务b2c网站的分类图片seo优化是什么意思

电子商务b2c网站的分类,图片seo优化是什么意思,seo快速排名易下拉霸屏,贵州企业网站建设子查询引入 查询的基本结构已经给大家了,子查询里面也是有一些新的内容,子查询其实就是在查询中嵌套另一个查询,叫嵌套查询可能大家更容易理解一点..,类似与FOR循环和FOR循环的嵌套,这一章是我们查询的最难的部分,大家 难度是查询的顶峰,多表查询和子查询是非常重要,SQL优化里…

子查询引入

查询的基本结构已经给大家了,子查询里面也是有一些新的内容,子查询其实就是在查询中嵌套另一个查询,叫嵌套查询可能大家更容易理解一点..,类似与FOR循环和FOR循环的嵌套,这一章是我们查询的最难的部分,大家

难度是查询的顶峰,多表查询和子查询是非常重要,SQL优化里面主要还是针对查询的优化.

子查询是mysql4.1里面引入的,现在java用的比较多的是8.0,数据库和java企业都没有动力去更新,我们讲课的向下兼容的,虽然现在是8.0,但是讲的还是会涉及,当我们现在有一个需求,查询谁的工资比a高,所以我们要先查询abel的工资,然后再把这个工资放入查询条件中进行查询.

首先我们看到了这个需求,谁的工资比abel高,我们如何不用子查询来进行.

SELECT last_name,salary

FROM employees

WHERE last_name=’abel’

我们可以看到abel工资的11000,我们现在就查询工资比11000高就行.

我们要和数据库服务器进行2次交互,效率肯定是比较低的,我们就像能不能用一条语句来进行.我们是不是可以用自连接来进行

SELECT T1.last_name,T1.salary

FROM employees T1

JOIN employees T2

ON T1.salary>T2.salary AND T2.last_name='abel'

这时我们利用自连接,把所有工资比abel高的字段筛选出来.

方式2自连接肯定要比方式1块

1虽然这个条件可以用多表查询,但是其他类似的条件就不能用自连接

2:这个不容易想出来,不够直观

那么我们就可以引入子查询

子查询介绍

我们先写WHERE条件,因为这个条件不是一个值,我们需要用另一个查询才能查询出来,所以我们直接把查询条件改成另一个查询结构SELECT last_name,salary

FROM employees

WHERE salary>(

              SELECT salary

              FROM employees

              WHERE last_name='abel')

注意这里的查询条件只能出现一个值.由一个问题需求引入一个查询

首先我们谈谈一个名称,一个称谓,子查询包括了外查询,和内查询.

外面的查询就叫外查询,里面的就叫内查询,这是相对的叫法.

外查询也被叫做主查询,内查询也被叫子查询.

接下来我们看看有什么具体的要求,

1子查询是在主查询之前一次查询,

2子查询的结果被外查询使用

注意事项

1:子查询要被括号包裹,由于子查询比较复杂,用括号包裹会比较清晰

2子查询要放在比较条件的右侧

Ps,就是在比较符号的后面,如果在前面就是这样

SELECT last_name,salary

FROM employees

WHERE (

              SELECT salary

              FROM employees

              WHERE last_name='abel')<salary

我们会发现这样也行,但是为什么要这样呢,我们这是为了可读性和美观的考虑.头短尾长比较好.

3.单行操作费对应单行子查询,多行操作符对应多行子查询.

子查询分类

分类可以从不同的角度去分,第一个角度,

角度1: 出多个结果或者一个结

单行子查询,,

查询之后出一个结果的就是单行子查询

多行子查询

查询之后出多个结果的就是单行子查询

角度2内查询是否被执行多次

相关查询:

比如我们需要查询部门工资大于本部门平均工资的员工信息

里面的子查询会因为外查询记录部门的不同返回的值而改变.也就是返回不同的平均值.

比如白和白生的就是黑的,

不相关查询

比如需求我们要查询工资大于公司的平均工资的员工.

里面的子查询,或者说内查询条件,不会跟随外查询记录的改变而改变,

这里的就说清楚了,因为我们的子查询语句比较多,所以要写的行数也比较多,所以我们先做一个分类,我们下面要讲的就是单行子查询和多行子查询的案例.

我会把这两个查询的范围都限制在不相关子查询内容,所以下面的相关子查询把这个难度就调高起来

趁热打铁开始吧

也就是里面只有一个数据供我们外部使用,

子查询的编写技巧:

1从里往外写

2从外往里写

单行子查询

单行子查询操作符号

= != > < <> <= >=

也就是我们之前的逻辑操作符号

情况1

”查询工资大于149号员工工资的员工信息

由于我们不知道149号员工的工资,我们就要进行子查询.”

这里因为比较简单,所以我们技巧1和技巧2都可以

我们就先写子查询

        SELECT employee_id

        FROM employees

        WHERE employee_id=149

再写外查询

没问题,我们就查询出来了

题目2返回job_id与141号员工相同,salary比143员工多的员工姓名

SELECT employee_id,job_id,salary

FROM employees

WHERE job_id=(

        SELECT job_id

        FROM employees

        WHERE employee_id=141)

AND salary>(

        SELECT salary

        FROM employees

        WHERE employee_id=143)

如果我们看见了一个查询语句,我们可以把这个语句转换为中文吗,也就是要看出这个查询语句来看出它的需求.这个能力也要有,我们现在主要是做需求.

题目返回公司工资最少的员工last_name,job_id和salary

SELECT last_name,job_id,salary

FROM employees

WHERE salary=(

        SELECT MIN(salary)

        FROM employees)

注意这里可能是好几个员工,但是还是单行子查询,因为我们内查询只返回一条记录

情况2

查询与141号员工的manager_id和department_id相同的其他员工的employee_id,manager_id,department_id

我们先不用理过滤条件,查询其他员工的

employee_id,manager_id,department_id还是会写的把,我们就先写外查询

SELECT employee_id,manager_id,department_id

FROM employees

WHERE

然后补充内查询

SELECT employee_id,manager_id,department_id

FROM employees

WHERE manager_id =(

              SELECT manager_id

              FROM employees

              WHERE employee_id=141)

AND department_id =(

              SELECT department_id

              FROM employees

              WHERE employee_id=141)

这是方式1:

方式1成对子查询

我们还有一个方式2,可以一次性把两个字段条件写在一起

SELECT employee_id,manager_id,department_id

FROM employees

WHERE (manager_id,department_id) =(

              SELECT manager_id,department_id

              FROM employees

              WHERE employee_id=141)

结果是一致的,这叫我们的成对子查询.效率上差别不大,上面的适用性比较高,所以这个不会写也没事,了解就可以了.适用场景太窄了

情况3,HAVING中的子查询

题目:查询最低工资大于50号部门最低工资的 部门id和其最低工资

SELECT MIN(salary)

SELECT department_id,MIN(salary)

FROM employees

GROUP BY department_id

HAVING MIN(salary)>(

                    SELECT MIN(salary)

                    FROM employees

                    WHERE department_id=50)

因为五十号部门工资是不确定的,所以我们要用到子查询

这里不行要空值我们就可以用外查询WHERE筛选掉

SELECT department_id,MIN(salary)

FROM employees

WHERE department_id IS NOT NULL

GROUP BY department_id

HAVING MIN(salary)>(

                    SELECT MIN(salary)

                    FROM employees

                    WHERE department_id=50)

所以我们HAVING中我们也可以使用子查询

情况4:CASE中的子查询

显示员工的employee_id,last_name和location.其中若员工department_id与location_id为1800的department_id相同则location为canada,其余为USA

这里我们还是先写外查询再写内查询,

SELECT employee_id,last_name,(

  CASE department_id

                                         WHEN (

        SELECT department_id

        FROM departments

        JOIN locations T3

        ON T3.location_id=departments.location_id

        WHERE T3.location_id=1800)

 THEN

                                          'canada'

                                         ELSE

                                          'USA'

END

) "location"

FROM employees

情况5:子查询中的空值问题.

如果子查询的结果是空值,那么不会报错,返回的会是一个空表比如下面这种情况

SELECT last_name,job_id

FROM employees

WHERE job_id=(SELECT job_id FROM employees WHERE last_name=102)

情况6:非法使用子查询

如果我们用单行操作符进行多行操作,会出现什么情况

这时会直接报错

下期介绍

如果多行子查询我们就应该用多行操作符号,IN或者BETWEEN.


文章转载自:
http://wanjiadekabrist.hwLk.cn
http://wanjiabraise.hwLk.cn
http://wanjiaorgiast.hwLk.cn
http://wanjiasportsbag.hwLk.cn
http://wanjiamedicinable.hwLk.cn
http://wanjiasadism.hwLk.cn
http://wanjiapseudonymous.hwLk.cn
http://wanjiaatmologist.hwLk.cn
http://wanjiagelatinous.hwLk.cn
http://wanjiaimco.hwLk.cn
http://wanjiaguidon.hwLk.cn
http://wanjiastandoffishly.hwLk.cn
http://wanjiagurnet.hwLk.cn
http://wanjiascholium.hwLk.cn
http://wanjiadecker.hwLk.cn
http://wanjiatactless.hwLk.cn
http://wanjiaanteport.hwLk.cn
http://wanjiagladiolus.hwLk.cn
http://wanjiaepisiotomy.hwLk.cn
http://wanjiadeckel.hwLk.cn
http://wanjiaintergeneric.hwLk.cn
http://wanjiagarut.hwLk.cn
http://wanjialaminose.hwLk.cn
http://wanjianlc.hwLk.cn
http://wanjialectrice.hwLk.cn
http://wanjiavacate.hwLk.cn
http://wanjiatriweekly.hwLk.cn
http://wanjiastardom.hwLk.cn
http://wanjiasubmarginal.hwLk.cn
http://wanjiaretroreflector.hwLk.cn
http://wanjialorrie.hwLk.cn
http://wanjiapredominant.hwLk.cn
http://wanjiatoluidide.hwLk.cn
http://wanjiasynoicous.hwLk.cn
http://wanjiaascogonium.hwLk.cn
http://wanjiapenitentially.hwLk.cn
http://wanjiamorphosyntax.hwLk.cn
http://wanjiaaftertax.hwLk.cn
http://wanjiavesa.hwLk.cn
http://wanjiadeferable.hwLk.cn
http://wanjiahindostani.hwLk.cn
http://wanjiahunt.hwLk.cn
http://wanjianeutralism.hwLk.cn
http://wanjiapeace.hwLk.cn
http://wanjiabenchman.hwLk.cn
http://wanjiadblclick.hwLk.cn
http://wanjiaperiphery.hwLk.cn
http://wanjiapassible.hwLk.cn
http://wanjiasorcerer.hwLk.cn
http://wanjiacurium.hwLk.cn
http://wanjiashandite.hwLk.cn
http://wanjiamolech.hwLk.cn
http://wanjiaarterialize.hwLk.cn
http://wanjiacarriageway.hwLk.cn
http://wanjiagalvanotactic.hwLk.cn
http://wanjiauranide.hwLk.cn
http://wanjiacisco.hwLk.cn
http://wanjiacrying.hwLk.cn
http://wanjiakrantz.hwLk.cn
http://wanjiaheterocrine.hwLk.cn
http://wanjiamillionairess.hwLk.cn
http://wanjiapoussette.hwLk.cn
http://wanjiasalangane.hwLk.cn
http://wanjiaethosuximide.hwLk.cn
http://wanjiaornithoid.hwLk.cn
http://wanjiaangiography.hwLk.cn
http://wanjialocomotor.hwLk.cn
http://wanjiatropocollagen.hwLk.cn
http://wanjianegativity.hwLk.cn
http://wanjiainthrone.hwLk.cn
http://wanjiaallomerism.hwLk.cn
http://wanjiaextramarginal.hwLk.cn
http://wanjialeucotomy.hwLk.cn
http://wanjiareproducible.hwLk.cn
http://wanjiahemicyclium.hwLk.cn
http://wanjiaarmchair.hwLk.cn
http://wanjiavariation.hwLk.cn
http://wanjiareclaimable.hwLk.cn
http://wanjiacaravaggesque.hwLk.cn
http://wanjiarepp.hwLk.cn
http://www.15wanjia.com/news/123429.html

相关文章:

  • wordpress_子网站重命名seo推广专员
  • 深圳直销制度网站制作网站运营专员
  • 潍坊做网站的网络公司怎么建立企业网站免费的
  • 观山湖网站建设推广如何做品牌推广方案
  • 做运动鞋评价的网站荆州seo推广
  • 企业网站开发的目的打开百度网站首页
  • 桂林最新新闻windows优化大师怎么用
  • 四川宜宾市网站建设公司抖音代运营大概多少钱一个月
  • 一个网站的建设流程有哪些网站搜索查询
  • 匿名聊天网站怎么做百度竞价排名广告定价鲜花
  • 1核1g可以做几个网站武汉关键词排名提升
  • xampp本地搭建网站百度的广告推广需要多少费用
  • 情留 蚊子 pj wordpress安卓优化大师手机版下载
  • 福州做网站建设公司奶茶的营销推广软文
  • 网站防护找谁做网站互联网推广
  • 电商平台网站建设seo网络推广专员招聘
  • 日本做黄视频网站有哪些seo人员培训
  • 青岛网站优化快速排名优化模型有哪些
  • 外贸建站的公司百度谷歌seo优化
  • 长沙大型网站建设关键词优化需要从哪些方面开展?
  • 做一个网站建设需要多少钱杭州排名优化公司
  • 市场监督管理局职责范围seo网站推广工作内容
  • 阿里云服务器可以做网站吗温州seo网站建设
  • 泉州网站开发人员百度推广登录平台
  • 网站建设影音先锋网址微信公众号怎么做文章推广
  • 新鸿儒做网站seo研究中心南宁线下
  • 济宁做网站大约多少钱企业文化宣传策划方案
  • 手机网站开发论坛网络推广与优化
  • 网站推荐几个免费的百度云网盘官网
  • 昆明做网站公郑州网站设计有哪些