初学MySQL--笔记五:DML数据库操作语言,DQL数据库查询语言

DML数据库操作语言

可以通过SQL语句中的DML语言来实现数据的操作,包括使用
    INSERT    实现数据的    插入
    DELETE    实现数据的   删除
    UPDATE    实现数据的   更新

一、插入数据INSERT
    完整插入
            INSERT INTO 表名  VALUES (值1,值2,值3…值n);
    部分插入
            INSERT INTO 表名(列名,列名)  VALUES (值1,值2);

二、更新数据UPDATE
    语法
            UPDATE   表名   SET   列名=值   WHERE   CONDITION;
    示例1
        准备一张表
            mysql> create table t6(id int, name varchar(20));
            mysql> insert into t6 values (1,'aa');
            mysql> insert into t6 values (2,'bb');
        更新数据
            需求:把bb改成cc
            mysql> update   t6   set   name='cc' where id=2;
        查询结果
            mysql> select * from t6;
    示例2
        修改mysql数据库管理员root账户的密码。
        mysql> update mysql.user set authentication_string=password("Liula@123456") where user="root";

三、删除数据DELETE
    语法
        DELETE   FROM    表名   WHERE   CONDITION;
    示例
        需求:删除id为2 的用户记录。
        mysql> delete from t6 where id=2;

DQL数据库查询语言

查看所有列
    前提是需要进入数据库。
    不进入数据库,就请输入库名。
    SELECT    *    FROM   表名;
查部分列
    SELECT   列1,列2,列3    FROM     表名;

单条件查询where
    查询hr部门的员工姓名
        SELECT name,post FROM employee5  WHERE post='hr';

多条件查询AND/OR
    查询hr部门的员工,并且工资大于1000
        SELECT name,salary FROM employee5  WHERE post='hr' AND salary>1000;
    查询所有部门的员工,并且工资是6000或者8000的员工
        SELECT name, salary FROM employee5 WHERE salary=6000 OR salary=8000

关键字BETWEEN AND 在什么之间
    查一查薪资在5000到15000
        SELECT name,salary FROM employee5  WHERE salary BETWEEN 5000 AND 15000;
    需求:不在5000~15000呢?请使用NOT
        SELECT name,salary FROM employee5 WHERE salary NOT BETWEEN 5000 AND 15000;

关键字IN集合查询
    是什么什么
        SELECT name, salary FROM employee5  WHERE salary IN (4000,5000,6000,9000) ;
    不是什么什么
        SELECT name, salary FROM employee  WHERE salary NOT IN (4000,5000,6000,9000) ;

关键字IS NULL
    没有岗位描述的
        SELECT name,job_description FROM employee5 WHERE job_description IS NULL;
    非空
        SELECT name,job_description FROM employee5  WHERE job_description IS NOT NULL;

关键字LIKE模糊查询
    好像有个员工姓阿
        SELECT * FROM employee5 WHERE name LIKE 'al%';
            通配符’%’代表多个任意字符
            注意不是shell的"*"星号。mysql使用"%"
    好像有个员工姓阿
        SELECT * FROM employee5 WHERE name LIKE 'al___';
            注意不是shell的“?”问号。mysql使用"_"下划线
            通配符’_’代表1个任意字符

查询排序
    例如以工资升序排列
        SELECT    *     FROM     表名   ORDER       BY     工资的列名     ASC;
    例如以工资降序排列
        SELECT    *     FROM     表名   ORDER       BY    工资的列名     DESC;
    工资最高的前五名
        SELECT * FROM employee5 ORDER BY salary DESC LIMIT  5;      
            //默认初始位置为0 



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值