一、什么是数据库?

数据库是按照数据结构来组织、存储和管理数据的仓库,每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。

我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。

所以,现在我们使用关系型数据库管理系统来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

关系数据库管理系统(RDBMS)的特点:

1.数据以表格的形式出现

2.每行为各种记录名称

3.每列为记录名称所对应的数据域

4.许多的行和列组成一张表单

5.若干的表单组成database

如今已有许多商业关系数据库管理系统,如Oracle,IBM DB2和Microsoft SQL Server等。

也有许多免费的开源关系数据库,如MySQL,mSQL(mini-SQL)和嵌入式JavaDB(Apache Derby)等。

二、MySQL数据库

1、定位:

开源、多平台、关系型数据库

目前使用最广泛、流行度最高的的开源数据库。

2、特点:

功能: 支持事务,符合关系型数据库原理,符合ACID,支持多数SQL规范,以二维表方式组织数据,有插件式存储引擎,支持多种存储引擎格式

部署: 用编译安装的方式,或者二进制包的方式,按照“安装软件-创建实例-库表用户初始化”,可以很快完成数据库部署。

使用: 使用标准的SQL语句进行数据库管理,简单SQL语句的并发和性能较好,对视图、存储过程、函数、触发器等支持的不是太好

监控: 在命令行界面有一些常用的命令显示状态和性能,在图形界面方面,有比较多的开源监控工具来监控和记录数据库的状态,比如zabbix,nagios,cacti,lepus等

备份: 逻辑备份 mysqldump/mysqldumper ,物理备份 用xtrabackup等工具进行备份;

高可用: MySQL高可用有多种方案,官方有基础的master-slave主从复制,新版本的innodb cluster,第三方的有MHA等高可用方案;

扩展: MySQL水平拆分,可以通过水平拆分proxy中间进行逻辑映射和拆分,扩大MySQL数据库的并发能力和吞吐量。

3、适用场景:

默认的innodb存储引擎,支持高并发,简单的绝大部分OLTP场景;

Tokudb存储引擎,使用高并发insert的场景;

Inforbright存储引擎,可以进行列压缩和OLAP统计查询场景;

4、选择注意:

使用MySQL进行OLTP业务时,需要注意数据量级,如果数据量级过大,需要进行水平拆分;

如果有OLAP需求,可以结合其他架构综合考虑。

三、测试人员面试:必问的 MySQL 查询语句

1、查看当前使用的是哪个数据库

mysql> select database();

另外,在下面2个语句的输出里也能看出当前库是哪一个

mysql> show tables;mysql> status;

2、查看MySQL版本和状态

mysql> select VERSION();mysql> status;

3、查看MySQL实例的当前状态(参数形式)

mysql> show status;

4、查看MySQL实例的参数

mysql> show variables;

查看最大连接数

mysql> show variables like '%max_connections%';

5、查看MySQL实例当前的进程

mysql> show processlist;

6、查询所有数据

select * from Info 查所有数据select Code,Name from Info 查特定列

7、根据条件查

select * from Info where Code='p001' 一个条件查询select * from Info where Code='p001' and Natio n='n001' 多条件 并关系 查询select * from Info where Name='胡军' or Nation='n001' 多条件 或关系 查询select * from Car where Price>=50 and Price<=60 范围查询select * from Car where Price between 50 and 60 范围查询

8、模糊查询

select * from Car where Name like '%型' %通配符代表任意多个字符select * from Car where Name like '%奥迪%' _通配符代表任意一个字符select * from Car where Name like '_马%'

9、排序

select * from Car order by Price asc 按照价格升序排列select * from Car order by Price desc 按照价格降序排列select * from Car order by Price,Oil 按照两列进行排序,前面的为主要的

10、统计函数(聚合函数)

select count(Code) from Car 查询表中有多少条数据select max(Price) from Car 取价格的最大值select min(Price) from Car 取价格的最小值select sum(Price) from Car 取价格的总和select avg(Price) from Car 取价格的平均值

11、分组查询

select Brand from Car group by Brand having count(*)>2 查询所有系列中数量大于2的

12、分页查询

select * from Car limit 0,5 跳过几条数据取几条数据

13、去重查询

select distinct Brand from Car

14、查询建库、建表语句

mysql> show create database dbname;

指定库后才能查询建表语句

mysql> show create table tablename;

15、查询指定表的字段属性

mysql> show full columns from tablename;

或者

mysql> show full fields from tablename;

资源分享

下面这些是我的收集和整理的资料,对于开始学习【软件测试】或是技能进阶的朋友来说,绝对是最全面的教程仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你

关注【程序媛木子】微信公众号测试资源将免费获取,技术交流群(644956177)群里有技术大佬的各种技术交流和经验之谈。

【面试必背】 常问的15个MySQL数据库查询语句,相关推荐

  1. [PHP面试题]跳槽面试必背-自己最近5年的整理(二)

    看完这些还怕进不了大厂? [PHP面试题]跳槽面试必背-自己最近5年的整理(一) [PHP面试题]跳槽面试必背-自己最近5年的整理(三) PHP经典面试题集(含答案) 面试12家公司,收获9个offe ...

  2. 「面试必背」Tomcat面试题(收藏)

    「面试必背」Tomcat面试题(建议收藏) 2022-04-27 16:31·java柚子茶 前言 在工作中,作为 Java 开发的程序员,Tomcat 服务器是大家常用的,也是很多公司现在正在用的. ...

  3. [PHP面试题]跳槽面试必背-自己最近5年的整理(三)

    看完这些还怕进不了大厂? [PHP面试题]跳槽面试必背-自己最近5年的整理(一) [PHP面试题]跳槽面试必背-自己最近5年的整理(二) PHP经典面试题集(含答案) 面试12家公司,收获9个offe ...

  4. 计算机专业考研面试时老师会问什么问题,计算机考研复试面试环节中常问10个问题...

    考研成绩公布时间日益临近,分数固然重要,但你的焦急不会让分数提高.但是复试同样决定生死.那复试中老师问及的问题该如何回答,又暗含哪些考查目的呢?一起了解下.小编为大家精心准备了计算机考研热门高校备考指 ...

  5. Qt5.15 连接MySQL数据库的实现策略

    文章目录 Qt5.15 连接MySQL数据库 测试环境: 连接 测试 总结: Qt5.15 连接MySQL数据库 Qt5.15 的QSqlDatabase 类中并没有支持MySQL数据库的驱动,需要用 ...

  6. java面试必背知识点

    JAVA必背面试题和项目面试通关要点 一 数据库 1.常问数据库查询.修改(SQL查询包含筛选查询.聚合查询和链接查询和优化问题,手写SQL语句,例如四个球队比赛,用SQL显示所有比赛组合:举例2:选 ...

  7. 面试:最常问问题和最佳答案

    根据保圣那管理顾问公司针对人事主管的调查,统计出15个人事主管最常问的问题和最喜欢的答案. 问题1:你为什么想离开目前的职务? A.别的同仁认为我是老板前的红人,所以处处排挤我. B.调薪的结果令我十 ...

  8. 2021年九月最新Java面试必背八股文,338道最新大厂架构面试题

    为了帮助每一个想顺利通过架构面试的朋友,我们研究了各个大厂常考的面试题型,涵盖各个大厂高频常考点,整理出这篇「 338道最新大厂常考架构技术面试题 + 详细解答」,带你斩获大厂架构师 Offer! 面 ...

  9. 「面试必背」Redis面试题(2022最新版)

    作为一个后端开发人员,不只是要求开发人员需要掌握 Redis,也要求运维人员也要懂 Redis.由于 Redis 的运用广泛,我们也知道它的重要性,至此面试中经常被问到.在这 80道 Redis 面试 ...

最新文章

  1. Activiti+Oracle,在数据量大的时候报错:无法支持1000列以上
  2. python多线程的两种写法
  3. 创建自己的内容提供器
  4. 位图布隆过滤器海量数据处理
  5. java中io流如何创建一个文件_,Java中Io流操作-File类的常用操作-创建文件,创建文件夹...
  6. 无限滚动重置服务器,简单无限滚动的实现
  7. 【BZOJ2500】幸福的道路 树形DP+RMQ+双指针法
  8. linux 中断和进程 传递,Linux内核之进程上下文和中断上下文的区别
  9. jsp mysql环境_MySQL在JSP环境下的操作应用
  10. 【Linux】Linux中文本编辑器和系统管理命令
  11. 原来人生真的是一场苦的修行
  12. perl里q,qq,qw等的用法
  13. STM32 BOOT模式配置以及作用
  14. 查询服务器主机CPU是几核?附应用场景展示(已解决)
  15. 用Python制作小游戏
  16. 服务器文件管理系统破解版,Cerberus FTP Server Enterprise
  17. 青岛安装网络电话找盖邦网络,国内长途市话一律5分5
  18. 网关怎么买?是选小米智能多模网关?还是Aqara网关呢?
  19. 程序适用范围:直线、圆曲线、相等缓和曲线、不等缓和曲线、卵型曲线等公路工程上常见的平面线型号,均能在同一个程序内计算。
  20. 探讨Android6.0及以上系统APP常驻内存(保活)实现-争宠篇

热门文章

  1. Mysql的备份与恢复类型
  2. 电脑端一些快捷开源创建平台
  3. OpenCV学习(13) 细化算法(1)(转)
  4. jquery气泡提示效果
  5. 5-5 常用系统接口
  6. 正反斜杠的区别_电脑中的正斜杠(/)与反斜杠(\)的区别
  7. 【论文写作】毕业论文写作套路之正文(2)
  8. matlab曲线拟合的应用,MATLAB软件在曲线拟合中的应用
  9. 批量获取ip运营商_通信公司员工收钱开通IP多拨被用于诈骗,6人获刑
  10. 计算机系统硬件类(Computer System Hardware Classes)