• Mysql(2)


    DML---对数据库中表记录的操作(插入insert、更新updata、删除delete、查询select)

    1.插入记录

    insert into tablename(field1,field2,...,fieldn) values(value1,value2,...,valuen);

    eg:向emp表中插入ename为zzx1,hiredate为2000-01-01,sal为2000,deptno为1

    insert into emp(ename,hiredate,sal,deptno) values('zzx1','2000-01-01','2000',1);

    或不指字段名,但是values先后顺序要与字段顺序一致。

    insert into emp values('zzx1','2000-01-01','2000',1);

    含空字段、非空字段,但是含有默认值的字段、自增字段可以不用在insert后的字段列表里面出现

     查看整个表格:
    select * from table_name;

    一次插入多条记录:

    insert into tablename (field1,field2,...,fieldn)

    values

    (record1_value1,record1_value2,....record1_valuen),

    (record2_value1,record2_value2,....record2_valuen),

    ...

    (recordn_value1,recordn_value2,....recordn_valuen);

    eg:insert into dept values(5,'dept5'),(6,'dept6');

     2.更新记录update

    update tablename set field1=value1,field2=value2,...,fieldn=valuen[where condition]

    eg;将emp表中ename为lisa的薪水从3000改为4000

    update emp set sal=4000 where ename='lisa'

    同时更新多个表中数据:

    update t1,t2,...,tn set t1.field1=exp1,t2.field2=exp2,...,fieldn=expn [where condition]

    eg:同时更新表emp中的字段sal和表dept中的字段deptname:

    update emp a,dept bset a.sal=a.sal*b.deptno,b.deptname=a.ename where a.deptno=b.deptno;

    3.删除记录

    delete from tablename [where condition]

    eg:delete from emp where ename='dony'

    一次删除多个表的数据:

    delete t1,t2,...,tn from t1,t2,...,tn [where condition]

    from后面用表名的别名,则delete后面也要用对应的别名。

    eg:同时删除emp和dept中deptno为3的记录:

    delete a,b from emp a,dept b where a.deptno=b.deptno and a.deptno=3;

    注:无论单表还是多表,不加where 条件会把表的所有内容删除。

    4.查询记录

    select * from tablename [where condition]

    eg:将记录全部查出:

    select * from emp;

    *表示将所有记录都选出来,也可以用逗号分隔的所有字段代替,如:

    select ename,hiredate,sal,deptno from emp;

    各种查询方法:

    ①查询不重复的记录

    select distinct 列名 from tablename;

    eg:筛选某列中不重复的所有行:

    select distinct deptno from emp;

    ②条件查询(查询具备某些必要条件的记录)

    select * from tablename where condition;

    where 后面的条件是一个字段的比较,如'=','>','<','>=','<=','!='等,多条件间可以使用or,and等逻辑符号记性多条件联合查询。

    eg:筛选所有deptno为1的记录:

    select * from emp where deptno=1;

     ③排序和限制

    排序(order by):

    select * from tablename [where condition] [order by field1 [desc|asc],field2 [desc|asc],...,fieldn [desc|asc]];

    其中DESC和ASC是排序关键字,DESC为降序,ASC为升序。不写关键字时,默认为升序排列。order后面可以跟多个不同的排列字段,且每个排列字段可以有不同的排列顺序。

    eg:emp表中按工资高低进行显示:

    select * from emp order by sal;

    如果排列字段的值一样,则值相同的字段按照第二个排列字段进行排序,依次类推。若果只有一个排列子弹,则字段相同的记录将会无序列排序。

    eg:select * from emp order by deptno,sal desc;

    限制:

    select 

  • 相关阅读:
    Linux操作系统学习之第三篇
    Linux操作系统学习之第二篇
    简介VMware workstaion
    Linux操作系统学习之起始篇
    c# 与java对应的 aes加密(带向量的)
    string转DateTime
    webapi项目创建
    c# mqtt 服务端、客户端简易例子
    vs快捷键
    c# 用byte数组生成图片
  • 原文地址:https://www.cnblogs.com/buzhidaojiaoshenmoleya/p/6926431.html
Copyright © 2020-2023  润新知