zoukankan      html  css  js  c++  java
  • SQL--表

    DML :增删改表中数据

    语法:

    添加数据:

         insert into 表名(列1,列2,。。。,列n)values(数据1,数据2,。。。,数据n);

    删除数据:

         DELETE FROM student WHERE id=2;如果不加条件则删除整个表的数据

                                                                   不推荐使用有多少条就会执行多少条操作

         TRUNCATE TABLE student;--删除表再创建一个一样的空表

    修改数据:

           UPDATE 表名 SET id=4,NAME='雪'  WHERE age=17;

    DQL:查询表中的记录

            select *from 表名;查询表

    语法:

    select

               字段列表

    SELECT address FROM student2; 查询结果集

    SELECT DISTINCT address FROM student2;  去除重复结果集

    求和

    SELECT NAME,math,english,IFNULL(math,0)+IFNULL(english,0)FROM student2;    如果为null替换为0

    SELECT NAME,math,english,IFNULL(math,0)+IFNULL(english,0)AS 总分 FROM student2;        起别名总分as可以省略

    SELECT * FROM student2 WHERE age>20 AND age<50;

    SELECT * FROM student2 WHERE age BETWEEN 20 AND 50;

    查询范围

    SELECT * FROM student2 WHERE age=20 OR age=50 OR age=45;
    SELECT * FROM student2 WHERE age IN (20,50,45);  

    NULL 需要用is  或者 is not 来判断,不能使用其他符号

     SELECT * FROM student2 WHERE NAME LIKE'马%';  查询姓马的人

    SELECT * FROM student2 WHERE NAME LIKE'_化%';查询第二个字有化的人

    排列方式

             SELECT *FROM student2 ORDER BY math ASC;升序排列

             SELECT *FROM student2 ORDER BY math DESC; 降序排列

    聚合函数:

    SELECT AVG(math) AS '数学' FROM student2;  计算平均值

    分组查询

     SELECT sex,AVG(math) '数学' FROM student2 GROUP BY sex;

     

    SELECT sex,AVG(math) '数学' FROM student2 WHERE math>80 GROUP BY sex;

     where再分组之前限定,having 再分组之后进行限定

    where后不可以跟聚合函数的判断,having可以跟聚合函数的判断。

     分页查询:

    SELECT * FROM student2 LIMIT 0,3;
    SELECT * FROM student2 LIMIT 3,3;
    SELECT * FROM student2 LIMIT 6,3;

    约束:

     CREATE TABLE stu(
    id INT,
    NAME VARCHAR(20) NOT NULL
    );

    ALTER TABLE stu MODIFY NAME VARCHAR(20);删除非空约束


    ALTER TABLE stu MODIFY NAME VARCHAR(20) NOT NULL; 创建表后添加非空约束

    ALTER TABLE stu2 DROP INDEX phone_number;删除唯一约束,不能用modify。

    主键约束,非空且唯一

    ALTER TABLE stu2 DROP PRIMARY KEY;主键删除

    自动增长(一般和主键一起):

     alter table stu modify id int; 删自动增长

     alter table stu modify id int auto_increment;添加自动增长

     外键约束;

     

     删除外键:

    alter table emplyee drop foreign_key emp_dept_fk;

    创建表后,添加外键

    alter table employee add constraint emp_dept_fk foreign key (dep_id) references department(id);

    级联操作:

    无级联时外键操作:

    添加外键时设置级联更新

     级联删除,先删除外键再级联删除:

  • 相关阅读:
    10_树基础部分
    11_多线程
    14_JUC
    Servlet代码实例
    关于JSP引用资源路径
    Struts2代码实例
    hadoop三大核心组件介绍
    presto自定义函数开发
    git使用
    hive优化总结
  • 原文地址:https://www.cnblogs.com/cy2268540857/p/14290745.html
Copyright © 2011-2022 走看看