进阶1

sql语法规范
    1. 不区分大小写,建议关键字大写,表名,列明小写

SHOW DATABASES;

    2. 每条命令最好用分号结尾
    3. 每条命令根据需要,可以进行缩进 或换行

SELECT
*
FROM
stuinfo;

    4. 注释
        单行注释: # 注释文字
        单行注释: -- 注释文字
        多行注释: /* 注释文字 */

五. DQL语言的学习
    基础查询
        建议每次写查询语句的时候,先写所用的库,例如: use myemployees;

        #进阶1:基础查询
        /*
        语法
        select 查询列表 from 表名;

        特点:
        1、查询列表可以是:表中的字段、常量值、表达式、函数。
        2、查询的结果是一个虚拟的表格(临时性的)
        */
        USE myemployees;

        #1、查询表中单个字段
        SELECT last_name FROM employees;
        `department_name``departments``departments``departments`
        #2、查询表中多个字段
        SELECT `first_name`,`last_name`,`email` FROM employees;

        #3、查询表中所有字段
        SELECT * FROM employees;

        #4、查询常量值
        SELECT 100;
        SELECT 'john';

        #5、查询表达式
        SELECT 100*87;

        #6、查询函数
        SELECT VERSION();

        #7、起别名
        /*
        1、便于理解
        2、如果要查询的字段有重名的情况,使用别名可以区分开来
        */
        # 方式一:
        SELECT 100*98 AS 结果;
        SELECT last_name AS 姓, first_name ASFROM employees;

        # 方式二:
        SELECT last_name 姓, first_name 名 FROM employees;

        # 案例: 查询salary, 显示结果为 out put, 因为out put 是关键字,系统会报错,所以要引起来加以区别
        SELECT salary AS 'out put' FROM employees;

        #8、去重

        #案例: 查询员工表中涉及到的所有部门的编号
        SELECT DISTINCT `department_id` FROM employees;
        SELECT `department_id` FROM `employees` GROUP BY `department_id`

        #9+ 号的作用:仅仅是运算符
        /*
        select 4+7;
        select '123' + 90; 其中有一个为字符型,视图将字符型转换为数值型,如果转换成功则继续做加法运算
                    
        select 'abc' + 90;  如果转换为失败,则字符型转换为0,做加法运行

        select null = 10;   只要其中一方为 null,则结果为 null
        */

        #案例:查询员工的名和姓连接成一个字段,并显示姓名 concat() 拼接函数
        SELECT CONCAT('a', 'b','c') AS 结果;

        SELECT  CONCAT(`last_name` ,`first_name`) AS 姓名 FROM `employees`;

        SELECT IFNULL(`commission_pct`,0) FROM `employees`; 
        /*null 与 任何字符拼接,结果都为 null*/
        SELECT CONCAT(`employee_id`,`first_name`,`last_name`,IFNULL(`commission_pct`, 0)) AS out_put FROM employees;

 

 

posted @ 2020-02-26 11:14  gupanpan  阅读(76)  评论(0)    收藏  举报