zoukankan      html  css  js  c++  java
  • mysql 增删改与简单查询

    在执行语句前,先要设置mysql字符集set names utf8;

    • 添加数据

    INSERT INTO 表名(字段名1,字段名2,…)VALUES(值1,值2,…);

    若不指定字段名,则添加的值的顺序应和字段在表中的顺序完全一致

    INSERT INTO 表名 VALUES(值11,值2,…);

    为指定字段添加数据,即只向部分字段添加值,而其他字段的值为表定义时的默认值。

    INSERT INTO 表名(字段1,字段2,…) VALUES(值1,值2,…)

    其他写法

    INSERT INTO 表名SET 字段名1=值1,字段名2=值2,…;

    同时添加多条数据

    INSERT INTO 表名 VALUES(值1,值2,…),(值1,值2,…),(值1,值2,…)

    • 删除数据

    删除部分数据    DELETE  FROM student  WHERE id=7;

    删除全部数据     DELETE FROM 表名

    删除全部数据的另一种方法—TRUNCTE [TABLE ] 表名

    (1)DELETE 后面可以跟WHERE子句指定删除部分记录,TRUNCATE只能删除整个表的所有记录

    (2)使用TRUNCATE语句删除记录后,新添加的记录时,自动增长字段(如本文中student表中的 id 字段)会默认从1开始,而使用DELETE删除记录后,新添加记录时,自动增长字段会从删除时该字段的的最大值加1开始计算(即原来的id最大为5,则会从6开始计算)。所以如果是想彻底删除一个表的记录而且不会影响到重新添加记录,最好使用TRUNCATE来删除整个表的记录

    • 更新指定数据

    UPDATE 表名     SET 字段名1=值1, 字段名2=值2,… WHERE 条件表达式

    更新全部数据        UPDATE 表名     SET 字段名1=值1

    • 查询数据

    查询所有字段    SELECT 字段名1,字段名2,…FROM 表名

     字段顺序可以更改

    带关系运算符的查询      SELECT 字段名1,字段名2,…FROM 表名 WHERE 条件表达式

     带 IN 关键字的查询

    IN关键字用于判断某个字段的值是否在指定集合中,若在,则该字段所在的记录将会被查询出来.

    SELECT * | 字段名1,字段名2,…FROM 表名WHERE 字段名 [ NOT ]  IN (元素1,元素2,…)

    NOT IN 与 IN 相反,查询的是不在指定范围内的记录

    带 BETWEEN AND  关键字的查询

    BETWEEN AND 用于判断某个字段的值是否在指定范围之内,若在,则该字段所在的记录会被查询出来,反之不会。

    SELECT * | { 字段名1,字段名2,… FROM  表名  WHERE 字段名 BETWEEN  值1 and 值2;

    空值查询

    在数据表中有些值可能为空值(NULL),空值不同于0,也不同于空字符串,需要使用 IS NULL 来判断字段的值是否为空值。

    SELECT * | 字段名1,字段名2,…FROM 表名  WHERE 字段名 IS [ NOT ] NULL

     带 DISTINCT 关键字的查询

    很多表中某些字段的数据存在重复的值,可以使用DISTINCT关键字来过滤重复的值,只保留一个值。

    SELECT DISTINCT 字段名 FROM 表名;

     带 LIKE 关键字的查询

    SELECT * | 字段名1,字段名2,…FROM 表名 WHERE 字段名 [ NOT LIKE ‘匹配字符串’;

    百分号(%)通配符

    以z开头

    以z开头以n结尾

    不含z

    下划线(_)通配符

     下划线通配符只匹配单个字符,若要匹配多个字符,需要使用多个下划线通配符。例如,字符串“ cu_ ”匹配以字符串“ cu ”开始,长度为3的字符,如“ cut ”,“ cup ”;字符串“ c__l”匹配在“ c ”和“ l ”之间包含两个字符的字符串,如“ cool ”。需要注意的是,连续的“_”之间不能有空格,例如“M_ _QL”只能匹配“My SQL”,不能匹配“MySQL”。

    带 AND 关键字的多条件查询

    带 OR 关键字的多条件查询

    OR 和 AND 一起使用的时候,AND 的优先级高于 OR,因此二者一起使用时,会先运算 AND 两边的表达式,再运算 OR 两边的表达式。

  • 相关阅读:
    前端常用代码
    前端常用代码
    Velocity模版自定义标签
    算法思想
    java特性之三--多态性
    非线性数据结构--图
    接口
    java特性之四--抽象
    (数据结构与算法) 堆
    数据结构_平衡二叉树(AVL树)
  • 原文地址:https://www.cnblogs.com/cgj1994/p/9559408.html
Copyright © 2011-2022 走看看