一、基础查询

  1、语法

select 查询列表 
from 表名;

  

  2、特点

    (1)查询列表可以是:表中的字段,常量值、表达式、函数;
    (2)查询的结果是一个虚拟的表格;

  3、SQL 语句特点

    (1)SQL 语言大小写不敏感;

    (2)SQL 可以写在一行或者多行;

    (3)关键字不能被缩写也不能分行;

    (4)各个子句一般要分行写;

    (5)使用缩进提高语句的可读性;

 

二、案例

  1、查询表中的单个字段

SELECT last_name FROM employees;

  

  2、查询表中的多个字段(选择特定的列)

SELECT last_name, salary, email FROM employees;

  

  3、查询表中的所有字段

    方式一:使用 * 号代替所有列的字段

SELECT * FROM employees;

     方式二:依次列出表中所有字段

SELECT `employee_id`,`first_name`,`last_name`,`email` FROM employees;

  

    注意: ` 为着重号,为了区分关键字与字段的不同。

  4、查询常量值(数值、字符串)

SELECT 100;

SELECT 'Tony';

    注意:字符型和日期型的常量值必须用单引号引起来,数值型不需要

  5、查询表达式

SELECT 100 * 98;

  

  6、查询函数

SELECT VERSION();

  

  7、查询,为字段起别名

    为了方便可以重命名一个列,便于显示或计算,别名需要紧跟列名,也可以在列名和别名之间加入关键字 "AS",别名使用双引号,以便在别名中包含空格或特殊的字符并区分大小写。

    方式一:使用 AS

SELECT	100%98 AS 结果;

SELECT last_name AS 姓, first_name AS 名 FROM employees;

  

    方式二:使用空格

SELECT last_name 姓, first_name 名 FROM employees;

    使用别名的好处:

    ① 便于理解;

    ② 如果要查询的字段有重名的情况,使用别名可以区分开来;

     案例:查询 salary,显示结果为out put。如果别名有空格,#等特殊符号,别名需要用双引号引起来:

SELECT salary AS "out put" FROM employees;

  

  8、去重:在字段前面使用 distinct 去重关键字

    案例:查询员工表中涉及到的所有的部门编号

SELECT DISTINCT `department_id` FROM `employees`;

  

  9、+ 号的作用

    MySQL 中的 + 号,仅仅只有一个功能:运算符

select 100 + 90; 当两个操作数都为数值型,则做加法运算

select '123' + 90; 只要其中一方为字符型,试图将字符型数值转换成数值型,如果转换成功,则继续做加法运算;

select 'John' + 90; 如果转换失败,则将字符型数值转换成0

select null + 90; 只要其中一方为 null,则结果肯定为 null

  

    案例:查询员工名 和 姓 连接成一个字段,并显示为 姓名

 

SELECT 
  last_name + first_name AS 姓名 
FROM
  `employees` ; # 0,转换成数字都为 0 

 

  

 

     上面的这种情况是不能拼接,使用 concat() 函数可以进行拼接:

SELECT CONCAT('a', 'b', 'c') AS 结果; # abc

  

  10、IFNULL 函数:判断是否非空

    功能:判断某字段或表达式是否为null,如果为null 返回指定的值,否则返回原本的值

SELECT IFNULL(`commission_pct`, 0) AS 奖金率, `commission_pct` FROM `employees`

     第一个参数是要判断的值,第二个是默认值,当第一个值为 null 时,就会返回默认值,否则返回本身的值;

  11、is null 函数:判断是否为空

    功能:判断某字段或表达式是否为null,如果是,则返回1,否则返回0

三、

 

posted on 2021-06-08 15:47  格物致知_Tony  阅读(51)  评论(0编辑  收藏  举报

目录导航