• mysql数据库中表记录的玩法


    一、增加表记录(相当于插入表记录)

     1. 插入完整数据(顺序插入)
    
        语法一:
        INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n);
        语法二:
        INSERT INTO 表名 VALUES (值1,值2,值3…值n);
    
    2. 指定字段插入数据
        语法:
        INSERT INTO 表名(字段1,字段2,字段3…) VALUES (值1,值2,值3…);
    
    3. 插入多条记录
        语法:
        INSERT INTO 表名 VALUES
            (值1,值2,值3…值n),
            (值1,值2,值3…值n),
            (值1,值2,值3…值n);
            
    4. 插入查询结果
        语法:
        INSERT INTO 表名(字段1,字段2,字段3…字段n) 
                        SELECT (字段1,字段2,字段3…字段n) FROM 表2
                        WHERE …;
    

    二、更新表记录

      1、格式:

    语法:
        UPDATE 表名 SET
            字段1=值1,
            字段2=值2,
            WHERE CONDITION;
    示例:
        UPDATE mysql.user SET password=password(‘123’) 
            where user=’root’ and host=’localhost’;
    
      2、注意:
    
        update 是用于修改或者说是更新数据记录,而set是设置更新那些字段(列)对应什么值,where是一个限制条件,只要与where连用才能精确的定位某一个数据记录,然后将其修改,如果没有where语句,那么就相当于是修改列下所有的数据记录。
    

    三、删除表记录

      1、delete from table_name [where 条件字句];  ge:delete from user where password='' '' 这就是所有用户删除密码

      2、truncate table table_name;

      3、注意1和2都是删除表记录的,但是如果想删除表中某一行记录建议选择1,如果想删除表中所有记录选择2,删除表所有数据时1是先读取整张表的数据然后逐条删除,2是直接把表删除然后新建一张字段一样的表。

    四、查询表记录

      1、格式:

        select *| 字段名1 [as] [别名],字段名2 [as] [别名],... from table_name where  字段名  字句条件

                              group by 字段名 字句条件

                              having 筛选条件

                              order by 字段名 [desc|asc]

                              limit  限制条件;

      2、where字句中可以使用:

        2.1 > < >= <= <> !=   表示比较运算符:

        2.2 between sum1 and sum2 表示值在sum1和sum2之间的数据

        2.3 in(sum1,sum2......)  表示所要查询在括号内的值

        2.4 like '字符串%‘  表示模糊查询

        2.5 and or not   表示逻辑查询

      3、order by 字句

        3.1 order by 是让查询出来的记录按照顺序有序显示出来,其中默认的是按照asc从小到大排序,也可以按照desc从大到小排序,但必须写在句末。

        3.2格式:

          select * from table_name order by 字段名 [desc|asc];

      4、limit 字句

        4.1用于限制查询出的数据记录条数

        4.2 格式:

          select * from table_name limit sum1[,sum2];

        4.3 eg:

          select * from table_name limi 2,5;    表示跳过前2行从第三行开始显示5行

      5、正则表达式:

        5.1 regexp 可以支持^ {sum} $,其中^表示以什么开头,$表示以什么结尾,{sum}表示出现多少次

        5.2 eg:

          select * from table_name where 字段名 regexp '^x' ;  表示查找以x开头的数据记录

          select * from table_name where 字段名 regexp 'x$' ;  表示查找以x结尾的数据记录

          select * from table_name where 字段名 regexp 'x{2}' ;  表示查找x出现两次的数据记录

      6、聚合函数:

        6.1 count(列名):统计行数,相当于统计一列中有多少行。

            eg: select count(列名) from table_name;

        6.2 sum(列名) : 统计列中的和,相当于把一列中的数据相加起来。

            eg: select sum(列名) from table_name;  

        6.3 avg(列名):统计一列中的平均值,相当于一列中的数据相加再除以一列中的数据的行数。

            eg: select avg(列名) from table_name;

        6.4 max|min(列名):统计一列中的最大|最小值

            eg:select max(列名)|min(列名) from table_name;

      7、group by

        7.1 格式:

          select * from  table_name group by 字段名 [having  逻辑判断条件];

        7.2group by 分组后面可以和having 连用。

      8、having

        8.1 select * from table_name having 逻辑判断条件;

        8.2having和where的区别:

          使用where的地方都可以用having替换

          having可以用在分组的后面也可以在分组前面,而where只能在分组前面

          having可以使用聚合函数,而where不行

  • 相关阅读:
    【C++ OpenGL ES 2.0编程笔记】8: 使用VBO和IBO绘制立方体 【转】
    顶点缓存对象(VBO)【转】
    CompileGLShader
    VR虚拟现实的工作原理,你知道多少?【转】
    VR/AR工作原理、目前存在的技术问题
    Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file'
    nginx配置用户认证
    恢复阿里云RDS云数据库MySQL的备份文件到自建数据库
    阿里云rds linux平台使用wget 工具下载备份与日志文件
    screen 命令使用及示例
  • 原文地址:https://www.cnblogs.com/xuanan/p/7235044.html
Copyright © 2020-2023  润新知