Day 69

_DML 操作数据

  1. 添加数据

    • 给指定的列添加数据:

      • INSERT INTO   表名(列名1,列名2,...)VALUES(值1, 值2,....);
        
    • 给全部列添加数据:

      • INSERT INTO   表名   VALUES(值1,值2,...);
        
    • 批量添加数据:

      • INSERT INTO   表名   (列名1,列名2...) VALUES(1,值2...)(1,值2...)(1,值2...)...;
        
      • INSERT INTO   表名   VALUES(1,值2...),(1,值2...)...;
        
  2. 修改数据

    • 修改表数据

      • UPDATE  表名  SET 列名1 =1,列名2 =2...WHERE  条件;
        **注意:修改语句中如果不加条件,则将所有数据都修改**
        
  3. 删除数据

    • DELETE FROM  表名 WHERE  条件
      ***注意:删除语句中如果不加条件,则将所有的数据删除!!!*
      
  4. # 添加数据 在p_test表中
    -- insert into p_test
    select *
    from p_test ;
    
     * 修改表
    
    -- 修改表名
      -- ALTER TABLE   表名   RENAME TO 新的表名;
     
    -- 添加一列
      -- ALTER TABLE   表名   ADD 列名   数据类型;
    alter table p_test  add address varchar(32);
    select *
    from p_test ;
      
    -- 修改数据类型
      -- ALTER TABLE   表名   MODIFY   列名    新数据类型;
    alter table p_test modify address varchar(64);
    --  修改列名和数据类型
      -- ALTER TABLE   表名   CHANGE    列名   新列名   新数据类型;
    alter table p_test  change address homeAddress varchar(64);
    select *
    from p_test;
    -- 删除列
      -- ALTER TABLE    表名   DROP 列名;
    alter table p_test drop homeAddress;
    select *
    from p_test pt ;
    
    -- 1. 添加数据
    
       -- 给指定的列添加数据:
    
         -- ```SQL
          -- INSERT INTO   表名(列名1,列名2,...)VALUES(值1, 值2,....);
          insert  into p_test(id , username , age) values (100, "Alex", 80);
          insert  into p_test(id , username , age) values (101, "Tom", 90);
          insert  into p_test(id , username , age) values (102, "Jack", 70);
          insert  into p_test(id , username , age) values (103, "Jne", 100);
          select *
          from p_test pt ;
    
       --  给全部列添加数据:
    
         - ```SQL
           INSERT INTO   表名   VALUES(1,值2...);
    
    • 批量添加数据:

      • INSERT INTO   表名   (列名1,列名2...) VALUES(1,值2...)(1,值2...)(1,值2...)...;
        
      • INSERT INTO   表名   VALUES(1,值2...),(1,值2...)...;
        
    -- 修改表数据
    
      -- UPDATE  表名  SET 列名1 = 值1,列名2 = 值2,...WHERE  条件;
      -- **注意:修改语句中如果不加条件,则将所有数据都修改**
        update p_test set username = 'Jack';
        update p_test set age  = 10 where  username  = 'Alex';
        select *
        from p_test pt ;
    
       
    
      -- 删除数据
         -- DELETE FROM  表名 [WHILE  条件]
         -- ***注意:删除语句中如果不加条件,则将所有的数据删除!!!*
        delete from p_test ;
    	delete from p_test where username  = 'Alex';
    	select *
    	from p_test pt ;
    

_DQL基础查询

  1. SELECT 
    	字段列表
    FROM
    	表名列表
    WHERE
    	条件列表
    GROUP
    	分组列表
    HAVING
    	分组后条件
    ORDER
    	排序字符
    LIMIT
    	分页限定
    
  2. 条件查询法:

    • SELECT 字段列表  FROM  表名  WHERE  条件列表
      
    • 条件:

      符号功能
      >大于
      <小于
      >=大于等于
      <=小于等于
      =等于
      !=不等于
      <=>绝对等于
      BETWEEN … AND在某个范围之内(都包含)
      IN( … )多选一
      LIKE 占位符模糊查询_单个字符 %多个字符
      IS NULL是NULL
      IS NOT NULL不是NULL
      AND 或者 &&并且
      OR 或者或者
      NOT 或 !非,不是

_DQL 排序查询

  1. 排序查询语法:

    • SELECT 字段列表 FROM ORDER BY 排序字段名1[排序方式1],  排序字段名2[排序方式2]...;
      
    • 排序方式:

      • ASC :升序排列(默认值)
      • DESC:降序排列

      注意:如果有多个排序条件,当前面的条件之一样时,才会根据第二条件进行排序

  2. /*
    --排序查询语法:
    
    -- ```sql
      SELECT 字段列表 FROM ORDER BY 排序字段名1[排序方式1],  排序字段名2[排序方式2]...;
    - 排序方式:
    
      - ASC :升序排列(默认值)
      - DESC:降序排列
    
      注意:如果有多个排序条件,当前面的条件之一样时,才会根据第二条件进行排序
      */
    
    -- 需求:将表employees中按salary降序排序
    
    select *
    from employees e ;
    
    select last_name ,salary 
    from employees e  order by salary desc  ;
    -- 需求:将表employees中按部门id升序,再按salary降序排序
    select *
    from employees e ;
    
    select last_name ,salary ,department_id 
    from employees e  order by department_id  , salary desc  ;
    

_DQL 聚合函数

  1. 概念:

    • 将这一列数据作为整体,进行纵向计算;

    • 聚合函数分类:

      • 函数名功能
        max(列名)最大值
        min(列名)最小值
        sum(列名)求和
        count(列名)统计该列一共有多少种元素(一般选用不为null的列)
        avg(列名)平均值
    • 聚合函数法:

      • SELECT 聚合函数名(列名) FROM;
        
      • 注意:NULL值不参与所有聚合函数的运算

  2. /*
    概念:
    
    - 将这一列数据作为整体,进行纵向计算;
    
    - 聚合函数分类:
    
      - | 函数名      | 功能                           |
        | ----------- | ------------------------------ |
        | max(列名)   | 最大值                         |
        | min(列名)   | 最小值                         |
        | sum(列名)   | 求和                           |
        | count(列名) | 统计该列一共有多少个元素(一般选用不为null的列)|
        | avg(列名)   | 平均值                         |
    
    - 聚合函数法:
    
      - ```sql
        SELECT 聚合函数名(列名) FROM 表;
      - 注意:NULL值不参与所有聚合函数的运算
        */
    
    -- 需求:查询employees中工资最高的成员
    select first_name ,last_name , max(salary) 
    from employees e ;
    
    -- 需求:查询employees中工资最低的成员
    select first_name ,last_name ,min(salary) 
    from employees e ;
    
    -- 需求:查询employees表中企业每个月需要给员工多少钱
    select first_name ,last_name ,sum(salary) 
    from  employees e ;
    
    -- 需求:查询一共需要个多少个员工发工资
    select  count(salary)'总人数为' 
    from employees e ;
    
    -- 需求:查看公司员工的平均月工资
    select avg(salary)'月平均工资' 
    from employees e ;
    
明日问题的输入事件与输出事件为: | Input Events | Node Output Event description Node . e0: start program event 1 e7: Welcome message 2 e1: center a valid month 6e8: print today's date 4 e2: enter an invalid month 67| e9: print tomorrow's date 6 e3: enter a valid day 69 e10: "month OK" 39 e4: enter an invalid day 69 e11: "month out of range" 41 e5: enter a valid year 71 e12: "day OK" 4 e6: enter an invalid year 71 e13: "day out of range" 4S e14: "year OK" 54 e15: "year out of range" 5( e16: "Date OK" 6C e17: "please enter a valid date" 62 e18: "enter a month" 6( e19: "enter a day" 68 e20: "enter a year" 70 c21: "Day is month, day, year" 8S 在下表中,ASF-6对应的输入事件为: 输出事件 ASF-7对应的输入事件为: 输出事件 为:_ ASF-8对应的输入事件为:_, 输出事件 为:_ ASF-9对应的输入事件为:_,输 出事件 为:_ Atomic System Function Inputs Outputs L ASF-1 start program e0 e7 | ASF-2 enter a date with an invalid month, valid day and valid year e2, e3,e5 e11,e12,e14,e17 | ASF-3 enter a date with an invalid day, valid month and validyear| e1, c4,e5 e10,e13,e14,e17 | ASE-4 enter a date wih an ivalid year, valid day and valid monh| el,e3, c6 e10,e12, el5,e17| ASF-5 enter a date with valid month, day, and year e1,e3,e5 . e10, e12, e14, e16, c21 | ASIF-6 enter a date with valid month, day and year invalid ASF-7 enter a date with valid day, month and year invalid ASF-8 enter a date with valid year, day and month invalid ASF-9 enter a date with invalid month, day, year
06-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值