• 0
  • 0
分享
  • MySQL数据增删改和基本查询——软件测试圈
  • 饭团🍙 2021-11-08 11:15:00 字数 2726 阅读 1059 收藏 0

1.jpg

一、DML

DML是Data Manipulation Language英文缩写,数据操作语言

包括:

  • INSERT ( 添加语句 )

  • UPDATE ( 更新语句 )

  • DELETE ( 删除语句 )

1、INSERT

语法:INSERT [INTO] 表名 [(列名)] VALUES (值列表);

实例:INSERT INTO goods (name) VALUES ('饼干');

1.1 插入单行数据

注意:

  • 字段名是可选的,如省略依次插入所有字段。

INSERT INTO goods VALUES (8,'肥皂',DEFAULT,'2021-09-02',100);
  • 插入的数据项,需求符合外键约束。

  • 值列表和字段名列表一一对应。

  • 具有缺省值的列,可以使用DEFAULT(缺省)关键字来代替插入的数值。

INSERT INTO goods VALUES (DEFAULT,'肥皂',DEFAULT,'2021-09-02',100);

1.2 插入多行数据

语法:INSERT INTO 新表(字段名列表)VALUES(值列表1),(值列表2),……,(值列表n);

实例:INSERT INTO goods VALUES (DEFAULT,'肥皂',DEFAULT,'2021-09-02',100),(DEFAULT,'方便面 ',DEFAULT,'2021-09-03',200);

经验:为避免表结构发生变化引发的错误,建议插入数据时写明具体字段名。

2、UPDATE

语法:UPDATE 表名 SET 字段1=值1,字段2=值2,…,字段n=值n [WHERE 条件];

实例:UPDATE goods SET cnt = 500 WHERE id = 10;

注意:

  • SET后可选择多个字段,用逗号隔开。

  • 勿忘条件限制,以防有效数据的丢失。

3、DELETE

语法:DELETE FROM 表名 [WHERE条件];

实例:DELETE FROM goods where id = 17;

注意:

  • 在主外键关联表,先删除外键表数据,再删除主键表数据。

二、DQL

DQL是Data Query Language英文缩写,数据查询语言。

特点:

  • 查询数据库数据,如SELECT语句。

  • 数据库语言中最核心、最重要的语句。

  • 使用频率最高的语句。

DQL常用查询语句

基本查询、条件查询、多条件查询、模糊查询、分组查询、链接查询、子查询。

DQL包含的应用

AS关键字、运算符、IN关键字、BETWEEN AND关键字、DISTINCT关键字、ORDER BY关键字、LIMIT关键字、NULL关键字、HAVING关键字、聚合函数。

1、SELECT

语法:SELECT 列名 FROM 表名;

实例:SELECT * FROM goods; 或 SELECTnameFROM goods;

经验:查询全部列表用 * 。

功能:

  • 给数据列表取名。

SELECT cnt AS '数量' FROM goods;
  • 给表取名。

  • 可把经计算或总结的结果用另外一个新名称来代替。

1.1 单条件查询

条件查询是通过WHERE子句进行检索的查询方式。

语法:SELECT * FROM 表名 WHERE 字段=值;

实例:SELECT * FROM goods WHERE id = 10;

1.2 运算符

它是用来进行列间或者变量之间的比较和数学运算的一种符号

算数运算符

1.png

关系运算符

2.png

赋值运算符

3.png

逻辑运算符

4.png

1.3 多条件查询

多条件查询是利用逻辑运算符把多个条件组合起来的条件查询。

语法:SELECT * FROM 表名 WHERE 字段1=值 逻辑运算符 字段2=值;

实例:SELECT * FROM goods WHERE id = 8 AND cnt = 100;

1.4 IN

查询符合括号内条件的数据

语法:SELECT 字段列1,字段2 ,…FROM 表名 WHERE 字段 IN ( 值1,值2,值3…) ;

实例:SELECT * FROM goods WHERE id IN(3,8); // id是3和8的数据

1.5 BETWEEN AND

查询值1和值2区间的数据,并且包含值1和值2。

语法:SELECT 字段列1,字段2 ,…FROM 表名 WHERE 字段 BETWEEN 值1 AND 值2;

实例:SELECT * FROM goods WHERE id BETWEEN 1 AND 10;

1.6 模糊查询

模糊查询是使用 SQL 通配符替代一个或多个字符的条件查询。

通配符

  • 一类字符,代替一个或多个真正的字符。

  • 与LIKE关键字一起使用。

5.png

语法:SELECT * FROM 表名 WHERE 字段 like ‘包含通配符的值’;

实例:SELECT * FROM goods WHEREnameLIKE '%可乐';

1.7 DISTINCT

去掉SELECT查询返回的记录结果中重复的记录, 相同记录只返回一条。

语法:SELECT DISTINCT 字段名1, 字段名2... FROM 表名;

实例:SELECT DISTINCT cnt FROM goods;

1.8 ORDER BY

一组数据按照升序或降序排列。

语法:SELECT <字段名列表> FROM <表名> [WHERE <查询条件>][ORDER BY <排序的列名> [ASC 或 DESC]]

实例:

升序:SELECT * FROM goods ORDER BY id ASC;

降序:SELECT * FROM goods ORDER BY id DESC;

1.9 NULL

特点:

  • 区别空字符串’‘

  • 只能出现在定义允许为NULL的字段

  • 须使用 IS NULL 或 IS NOT NULL 比较操作符去比较

语法:SELECT * FROM comments WHERE cmtAuthor IS NULL;

实例:

字段空:SELECT * FROM goods WHERE cnt is NULL;

字段非空:SELECT * FROM goods WHERE cnt is not NULL;

1.10 聚合函数

聚合函数是可以对一组值进行计算,并返回单个值的函数。

总数 COUNT()

求和 SUM()

平均值 AVG()

最大值 MAX()

最小值 MIN()

语法:SELECT 聚合函数 FROM <表名>

实例:SELECT COUNT(cnt) AS '数量' FROM goods;

经验:可以加 AS 来改名,SELECT 聚合函数 AS 名称 FROM <表名>

作者:张子伦

原文链接:https://blog.csdn.net/qq_49956121/article/details/120166916

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 前言自动化测试会越来越受到重视在移动互联时代,对于质量的要求PC时代的多,投产出最的动化测试,将会是部分公司的选向,但需要严格掌握门语。快速、高效的测试工具及脚本,能使程序猿的开发工作事半功倍。笔者进入到研发中心工作之后,参与到一个报文平台的重构项目中。该项目老平台基于C语言编写,架构老旧,可维护性与扩展性较差;为了紧跟研发中心的技术迭代步伐,新平台使用新的工具进行重构,使其构建发布、参数配置更灵活,便于后续维护与扩展。在新平台的重构开发过程中,报文的路由测试是很关键的部分。由于系统涉及一百多种不同格式的报文,且系统安全性要求较高,每个报文在系统中交互时都要进行加验签检查,所以需要对整个系统进...
            0 0 1908
            分享
          •   据报道,一位美国联邦法官裁定,起诉芯片制造商高通公司涉嫌隐瞒反竞争的销售和许可行为的股东,可以通过集体诉讼的形式向该公司提出索赔。  这些股东在加利福尼亚州圣地亚哥提起的诉讼中称,高通公司及其高管多次将其销售芯片和向其他公司授权其技术的业务描述为相互独立的业务,而事实上该公司将其捆绑在一起,从而影响了公平竞争。  在此案中起到了领导作用的投资者称,这些虚假陈述在2012年至2017年间人为地抬高了高通公司的股价。  高通方面则称股东的这些指控毫无根据。  美国地区法官金苏克·奥塔(JinsookOhta)在本周一驳回了高通关于这些销售行为已经公开的论点。  这位法官表示,高通对监管机构的反...
            0 0 528
            分享
          • 前言:之前做一个京东联盟的自动化脚本,好多人不理解为什么,这次做淘宝的自动化签名,并讲解一下实现细节,带你了解前置脚本,后置脚本的用法。自动化原理个人观点 自动化就像流水线一样,通过解析固定的规则,来达到自动化。前置和后置脚本的区别(它们的功能就如同名字一样)前置脚本:在请求发送之前,你可以通过脚本来做某些事情,值得注意的是变量是在前置脚本后面才执行的,所有有些问题可能不是你问题。前置脚本:在请求响应之前,你可以通过脚本来做某些事情。淘宝联盟接入文档调用入口调用API的服务URL地址,开放平台目前提供了2个环境给ISV使用:正式环境,海外环境。 调用环境  ...
            0 0 1733
            分享
          •   前言  通常在接口自动化中,经常会参数关联的问题,那么什么是参数关联?  参数关联就是上一个接口的返回值会被下一个接口当做参数运用,其中Python中可以实现参数关联的方法有很多种,今天小编给大家介绍下,如何通过Python来实现接口自动化中的参数关联。  UnitTest  虽然说目前Pytest框架比较流向,但是目前应该有绝大部分公司还是在使用UnitTest框架,那么小编先介绍下如何通过UnitTest来实现接口自动化的参数关联。  方法一  下面小编通过测试用例返回参数的形式进行实现参数关联。# coding:utf-8 import requests impo...
            0 0 840
            分享
          •  最常见的XSS检测代码:<script>alert(1)</script> // 调用JavaScript语句 <img src=x onerror=alert(1)> // src是错误的 就会调用error函数 <a href=javascript:alert(1)> // 点击a即可触发  实际应用中web程序往往会通过一些过滤规则来防止代有恶意代码的用户输入被显示。当上述代码被注入到输入框或者URL参数中时,可能会成功也可能会失败,如果失...
            0 0 671
            分享
      • 51testing软件测试圈微信