先描述一下查看表中所有记录的语句以便查看所做的操作(以下所有语句建议自己敲,不要复制以免出错):

    user表,字段有 id, name,age,sex;id为主键,自增,插入时可以写 NULL 或者 DEFAULT;

    以下实列都以user表为列;

    CREATE TABLE user(

          -> id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    -> name VARCHAR(20),
    -> age INT,
    -> sex VARCHAR(10)
    -> );

   SELECT  *  FROM 表名;列如:SELECT * FROM user;(语句不区分大小写,规范约定为关键字大写,小写也可以,不过尽量遵守规范)

1、插入数据:

  (1)INSERT INTO  表名  VALUES(,,,,,);  INTO 可省略

  则 : INSERT user VALUES(NULL,“张三” ,18,“男”);

  此时插入数据必须与字段对应,而且字段不能少

  无法插入汉字时,需要修改表的字符集:

  ALTER TABLE 表名 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

  (2)插入多条记录时,以逗号分隔:

   INSERT user VALUES(NULL,“张三” ,18,“男”),(NULL,“李四” ,20,“男”)

  (3)可以选择插入的字段:这种只能插入一条数据

   INSERT user SET name='zhangsan',age=20;

  (4)选择字段并插入多条数据,以逗号分隔

   INSERT user(name,age) VALUES('zhangsan1',20),('张三',30);

2、更新数据

  UPDATE 表名 SET 修改的操作 (WHERE 条件);

  (1)更新user表,让年龄在原有基础上加5;(没加条件,对所有数据修改)

    UPDATE user SET age = age+5;

  (2)更新user表,让年龄在原有基础上加5,并且姓名后面全都加上字符"HELLO"

    UPDATE user SET age=age+5,name=name+"HELLO";

  (3)对id为偶数的记录年龄加20,此时就不能对所有数据做操作,加上限定条件,只对id为偶数的年龄加20,id除以2的余数为0,则为偶数。

    UPDATE user SET age=age+20 WHERE id%2=0;

3、删除数据

  DELETE FROM  表名 (WHERE 条件)

  (1)删除id为1的数据记录

  DELETE FROM user WHERE id=1;

  (2)删除name是张三的记录,就会删除所有姓名为张三的记录

  DELETE FROM user WHERE name='张三';

4、查询数据(重点)

  (1)查询user表所有列的数据:

    SELECT * FROM user;

  (2)查询id和name这两列的数据:

    SELECT id,name FROM user;

  (3)查询时指定表名.字段名,为了避免查询多张具有相同字段名的表:

    SELECT user.id,user.name FROM user;

  (4)为表或字段起别名,为了避免名特别长的情况需要频繁输入,AS 后面就是别名,AS也可省略:

    SELECT u.id,u.name FROM user AS u;

  (5)GROUP BY 按字段名的值分组,按性别,性别只有男、女或者为NULL,name就会查到性别为男的第一条数据,性别为女的第一条,以及性别显示为NULL的

    SELECT * FROM user GROUP BY sex;

        (6)在GROUP BY之后还可以加上HAVING条件:id大于3的按性别分组:

    SELECT * FROM user GROUP BY sex HAVING id>3;

    HAVING 后面的id必须出现在查询的字段中,否则会报错:

    SELECT name FROM user GROUP BY sex HAVING id>3;(错误的,可以改为如下)

    SELECT name,id FROM user GROUP BY sex HAVING id>3;

  (7)ORDER BY按条件排序,DESC 降序,默认ASC升序,以下按id降序排列

    SELECT * FROM user ORDER BY id DESC;

  (8)ORDER BY可以多条件排序,当第一个条件无法排序时,按第二个条件排序:按age默认升序排,当出现两个age一样的时候,按id降序排列

    SELECT * FROM user ORDER BY age,id DESC;

  (9)LIMIT语句限制输出的语句数量:

    ,从第0个开始显示,显示2个

    SELECT * FROM user LIMIT 2;等价于:SELECT * FROM user LIMIT  0,2;

    与ORDER BY 结合使用:显示升序排列的前4条数据

    SELECT * FROM user ORDER BY age LIMIT 4;

  (10)将查询结果插入到另一张表,重新创建一个表tb1只有name和id字段:

    CREATE TABLE tb1(

      id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
      name VARCHAR(20));

    将查询到的年龄大于10的name列数据插入到tb1表中:

      查询到的结果字段必须与插入表中的字段数一样,不能查询到多个字段插入到一个字段中:

      INSERT tb1(name) SELECT  * FROM user WHERE age>10;(错误的)*查询到的字段是所有

      INSERT tb1(name) SELECT  name FROM user WHERE age>10;(正确的)

mysql简单增删改查(CRUD)的更多相关文章

  1. idea+spring4+springmvc+mybatis+maven实现简单增删改查CRUD

    在学习spring4+springmvc+mybatis的ssm框架,idea整合简单实现增删改查功能,在这里记录一下. 原文在这里:https://my.oschina.net/finchxu/bl ...

  2. Mybatis实现简单增删改查

    Mybatis的简单应用 学习内容: 需求 环境准备 代码 总结: 学习内容: 需求 使用Mybatis实现简单增删改查(以下是在IDEA中实现的,其他开发工具中,代码一样) jar 包下载:http ...

  3. Asp.Net操作MySql数据库增删改查

    Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git  1.安装MySQL数据库 ...

  4. MySQL之增删改查之

    MySQL之增删改查   前言:以下是MySQL最基本的增删改查语句,很多IT工作者都必须要会的命令,也是IT行业面试最常考的知识点,由于是入门级基础命令,所有所有操作都建立在单表上,未涉及多表操作. ...

  5. MySql之增删改查 · YbWork's Studio

    前提:在进行"增删改查"的操作之前,先建立一个包含数据表student的数据库(具体操作可以见MySQL之最基本命令): 1."增"--添加数据 1.1 为表中 ...

  6. koa+mysql实现增删改查-全栈之路(001)

    Date: 2020-4-23 以前很少写文章,从今天开始我要挑战一下自己,连续输出100篇技术类文章.这100篇文章我尽量以实战案例为主. 如果你觉得本文还不错,记得关注或者给个 star,你们的赞 ...

  7. 国产化之路-统信UOS + Nginx + Asp.Net MVC + EF Core 3.1 + 达梦DM8实现简单增删改查操作

    专题目录 国产化之路-统信UOS操作系统安装 国产化之路-国产操作系统安装.net core 3.1 sdk 国产化之路-安装WEB服务器 国产化之路-安装达梦DM8数据库 国产化之路-统信UOS + ...

  8. IDEA SpringBoot-Mybatis-plus 实现增删改查(CRUD)

    上一篇: IDEA SpringBoot-Mybatis实现增删改查(CRUD) 下一篇:Intellij IDEA 高效使用教程 (插件,实用技巧) 最好用的idea插件大全 一.前言 Mybati ...

  9. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

随机推荐

  1. 解决Windows Server 2012 R2 Datacenter云服务器无法运行opencv python程序的问题

    写了个基于opencv的python程序,pyinstaller 32位机打包后在win7/win10 32/64正常运行,在Windows Server 2012 R2 Datacenter云服务器 ...

  2. 虚拟机中的CentOS7如何上网?---https://blog.csdn.net/nothing2017/article/details/61420767

    虚拟机中的CentOS7如何上网?https://blog.csdn.net/nothing2017/article/details/61420767

  3. mappingLocations、mappingDirectoryLocations与mappingJarLocations 区别 (转)

    mappingLocations.mappingDirectoryLocations与mappingJarLocations 区别 由于spring对hibernate配置文件hibernate.cf ...

  4. 网上的仿QQ验证码,详细使用方法

    struts2的配置 和代码 1.生成图片流 类名:VerifyCodeUtils /** * 生成图片流 * @author Administrator * */ import java.awt.C ...

  5. 27、Java并发性和多线程-CAS(比较和替换)

    以下内容转自http://ifeve.com/compare-and-swap/: CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术.简单来说,比较和替换是使用一个期 ...

  6. Clojure: 寻找项目依赖项目

    Clojure寻找项目依赖项目: lein deps :tree

  7. Erlang下与其他程序和语言的通信机制(2)

    前面聊了普通端口,今天聊下链入式驱动端口,以及NIFs. 链入式驱动端口 如上图所示,链入式驱动端口与Erlang虚拟机存在于同一个OS进程中. 在Erlang这边与普通端口类似,所有与链入式驱动端口 ...

  8. LinearLayout (线性布局)的分析

    android提供了5中布局,线性布局,相对布局,帧布局.表格布局和绝对布局 线性和相对布局用的是最多的 以下要说的是线性布局 提到线性布局 一定要记住.它里面的全部组件一定不会重叠的, 切不会换行. ...

  9. Index statistics collected bug

    SQL运行引擎会从pg_stats.pg_class等相关系统字典表.视图获取生成最佳运行计划的数据,假设相关字典视图的数据不准确就没有办法生成良好的运行计划. 发现下面Bug一枚. 0. 插入数据之 ...

  10. IFFT 的实现

    IFFT 的实现 前些天给出了FFT的实现,如今给出IFFT(inverse FFT)的实现 基于IFFT 算法.对FFT的核心程序稍作改动就可以 : ) %%******************** ...