MySQL数据库学习2

   日期:2020-11-09     浏览:103    评论:0    
核心提示:MySQL数据库学习2转载文章请注明出处本节所需要的文件:链接:https://pan.baidu.com/s/18ZmrHK8nzvG39y7rLz7d0w提取码:2lxu文件均出自B站尚硅谷相关学习视频,本节文件通过小海豚打开一、DQL语言的学习(二)学习内容:其他知识点(1)查询已知表的结构,使用关键字desc举例: DESC employees;运行结果:基础查询(补上一节知识点)#拼接函数concat(后期学习函数,也会讲到)(1)和c++语言类似,拼接均使用关

MySQL数据库学习2(SQLyog)

转载文章请注明出处

本节所需要的文件:
链接:https://pan.baidu.com/s/18ZmrHK8nzvG39y7rLz7d0w
提取码:2lxu
文件均出自B站尚硅谷相关学习视频,本节文件通过小海豚打开

一、DQL语言的学习(二)

学习内容:

其他知识点
(1)查询已知表的结构,使用关键字desc
举例:

  DESC employees;

运行结果:

基础查询(补上一节知识点)
#拼接函数concat(后期学习函数,也会讲到)
(1)和c++语言类似,拼接均使用关键字concat
举例:

SELECt CONCAT ('a','b','c') AS 结果;
SELECT CONCAT (last_name,first_name) AS 姓名 FROM employees;

运行结果:


条件查询
语法:

select

          查询列表

from

         表名

where

         筛选条件

分类:
一、按条件表达式筛选

条件表达式运算符:
< 、>、 =、 !=(不等于)、 <>(MySQL中的不等于)、 >=、 <=

#案例一
查询工资大于12000 的所有员工信息

SELECt 
  * 
FROM
  employees 
WHERe salary > 12000 ;

运行结果:
#案例二
查询部门编号不等于90的员工的名和部门编号

SELECt 
  last_name,
  department_id 
FROM
  employees 
WHERe department_id <> 90 ;

运行结果:

二、按照逻辑表达式筛选

逻辑运算符:
&&、 ||、 !(同样适用)
and 、or 、not(是MySQL中的标准格式)

#案例一
查询工资在10000到20000之间的员工名、工资以及奖金

SELECt 
  last_name,
  salary,
  commission_pct 
FROM
  employees 
WHERe salary >= 10000 
  AND salary <= 20000 ;

运行结果:

#案例二
查询部门编号不是在90到110之间,或者工资高于15000的与员工信息。

SELECt 
  * 
FROM
  employees 
WHERe NOT (
    department_id >= 90 
    AND department_id <= 110
  ) 
  OR salary > 15000 ;

运行结果:

三、模糊筛选

like、between and 、in 、is null 、is not null
#1.like
特点:
(1)可以和通配符一起使用
% 任意多个字符
_ 任意单个字符
#案例一
查询员工名中包含字符a的员工信息

SELECt 
  * 
FROM
  employees 
WHERe last_name LIKE '%a%' ;

注意:字符一定要用单引号,并且含有a说明前后都可能有字符,所以前后都要有%
运行结果:

#案例二
查询员工名中的第三个字符为e,第五个字符为a的员工名和工资

SELECt 
  last_name,
  salary 
FROM
  employees 
WHERe '__e_a%' ;

#案例三
查询员工名中的第二个字符为_的员工名

SELECt 
  last_name 
FROM
  employees 
WHERe last_name LIKE '_\_%' ;

注意:_作为通配符,可以使用\进行转译
运行结果:

#2.between and
特点:
(1)包含临界值
(2)and两端的值不能调换
#案例一
查询员工编号在100到120之间的员工信息

SELECt 
  * 
FROM
  employees 
WHERe employee_id BETWEEN 100 
  AND 120 ;

运行结果:

#3.in
#案例一
查询员工的工种编号是IT_PROG、AD_VP、AD_PRES中的一个员工名和工种编号

SELECt 
  last_name,
  job_id 
FROM
  employees 
WHERe job_id IN ('IT_PROG', 'AD_VP', 'AD_PRES') ;

运行结果:

#4.is null
#案例一
查询没有奖金的员工名和奖金率

SELECt 
  last_name,
  commission_pct 
FROM
  employees 
WHERe commission_pct IS NULL ;

运行结果:

注意:Tip:<=>为安全等于符号,既可以判断null值又可以判断普通值,相当于等于号但是可读性较差。

#测试题
#1.查询没有奖金,且工资小于18000的工资和员工名

SELECt 
  salary,
  last_name 
FROM
  employees 
WHERe commission_pct IS NULL 
  AND salary < 18000 ;

#2.查询employees表中,工种编号不为’IT’或者工资为12000的员工信息

SELECt 
  * 
FROM
  employees 
WHERe job_id <> 'IT' 
  OR salary = 12000 ;

#3.查看部门departments表的结构

DESC departments;

#4.查询部门departments表中涉及到了哪些位置编号

SELECt DISTINCT 
  location_id 
FROM
  departments ;
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服