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

一浪网站建设nba最新排名东西部

一浪网站建设,nba最新排名东西部,专业网站建设软件开发,无极电影网叛逆者自连接方式 自连接就是表A连接表A,通过where关键字实现,比如查询工资比Abel高的员工信息: SELECTe2.last_name,e2.salary FROMemployees e1,employees e2 WHEREe1.last_name "Abel" AND e2.salary > e1.salary;子查询 亦称为…

自连接方式

自连接就是表A连接表A,通过where关键字实现,比如查询工资比Abel高的员工信息:

SELECTe2.last_name,e2.salary
FROMemployees e1,employees e2
WHEREe1.last_name = "Abel"
AND e2.salary > e1.salary;

子查询

亦称为嵌套查询:

SELECTlast_name,salary
FROMemployees
WHEREsalary > (SELECTsalaryFROMemployeesWHERElast_name = "Abel");

子查询写在括号内,放在比较条件的右侧。单行操作符对应单行子查询,多行操作符对应多行子查询。

子查询分类

  • 角度1:
    单行子查询:只返回一行结果的子查询;
    多行子查询:返回多行结果的子查询。

  • 角度2:
    相关子查询:子查询用到了主查询表的字段;
    不相关子查询:子查询用不到主查询表的字段。

相关子查询

SELECTlast_name,salary,department_id
FROMemployees e1
WHEREsalary > (SELECTavg(salary)FROMemployees e2WHEREe1.`department_id` = e2.department_id);

也可以在from中声明子查询:

SELECTemployees.last_name,employees.salary,employees.department_id
FROMemployees,(SELECTdepartment_id,avg(salary)FROMemployeesGROUP BYdepartment_id) sal_dept
WHEREemployees.department_id = sal_dept.department_id;

再看一个例子:查询在job_history中出现两次的employee_id对应的last_nameemployee_idjob_id

SELECTemployees.last_name,employees.employee_id,employees.job_id
FROMemployees,(SELECTemployee_id,count(employee_id) employee_id_countFROMjob_historyGROUP BYemployee_id) employee_hist
WHEREemployee_hist.employee_id = employees.employee_id
AND employee_hist.employee_id_count >= 2;

exists与not exists

exists关键字

exists关键字,用来检查在子查询中是否存在满足条件的行,一经发现,随即返回。
案例:查询公司管理者的信息:

# 方式1:
SELECT DISTINCTmanager.employee_id,manager.last_name,manager.job_id,manager.department_id
FROMemployees emp
JOIN employees manager ON emp.manager_id = manager.employee_id;# 方式2:
SELECTemployees.employee_id,employees.last_name,employees.job_id,employees.department_id
FROMemployees,(SELECT DISTINCTmanager_idFROMemployees) manager
WHEREemployees.employee_id = manager.manager_id;# 方式3:
SELECTe1.employee_id,e1.last_name,e1.job_id,e1.department_id
FROMemployees e1
WHEREEXISTS (SELECT*FROMemployees e2WHEREe2.manager_id = e1.employee_id);

not exists关键字

not exists关键字的含义和exists相反
案例:查询employees表中不存在的department_iddepartment_name

# 方式1:
SELECTdepartments.department_id,departments.department_name
FROMdepartments
LEFT JOIN employees ON departments.department_id = employees.department_id
WHEREemployees.department_id IS NULL;# 方式2:
SELECTdepartment_id,department_name
FROMdepartments
WHERENOT EXISTS (SELECT*FROMemployeesWHEREdepartments.department_id = employees.department_id);

如果一种查询既能用子查询实现,也能用自连接实现,一般选择后者,因为自连接效率更高。

http://www.mmbaike.com/news/47699.html

相关文章:

  • 做推文封面图网站seo入门版
  • 营销型网站价格实惠百度账户
  • wordpress企业网站建设全网搜索引擎
  • 公司网站怎么做教程站长推广工具
  • 人才网招聘网官网seo能干一辈子吗
  • 南宁营销型网站建设公司哪家好郑州seo哪家专业
  • 重庆网站如何做推广百度竞价排名广告定价
  • 网站建设外包被骗企业seo案例
  • 赣州专业企业网站建设seo推广论坛
  • 找考卷做要去哪个网站百度数据查询
  • 金融公司网站开发费用入什么科目搜索app下载
  • 想自己做网站 有免费的吗在线培训平台
  • 迈若网站建设成都进入搜索热度前五
  • 仓库管理系统app优化网站推广教程排名
  • 做设计私活的网站seo外包服务公司
  • 石家庄做网站公司有哪些信息流推广
  • 找客户在公司做网站深圳互联网营销
  • vue做普通网站页面跳转西安网站开发制作公司
  • 做图书网站的代码seo查询官方网站
  • 服务器租用大概多少钱站内优化包括哪些
  • 欧洲站vat激活网店营销与推广策划方案
  • 网站备案填了虚假座机能过吗百度一级代理商
  • 网站怎么看是谁做的百度域名提交收录网址
  • 上海设计公司电话刷关键词排名seo
  • 广东品牌网站建设多少钱seo英文
  • 网站建设人员岗位要求百度学术搜索
  • 自己做网站还是开通阿里巴巴诚信通网络推广主要做什么
  • 学校网站手机站的建设方案seo的实现方式
  • 如何自己搭建游戏服务器网络公司优化关键词
  • 政务网站集约化建设要求谷歌浏览器下载安卓版