MySQL笔记(简单查询)

MySQL笔记(简单查询),第1张

用来查询数据库中表的数据。关键字: select 、where 等。

注:查询只是对数据的一种显示,不会对数据库进行修改

1.查询所有数据 select * from 表 “*” 表示所有列; select id ,name, age, sex, birthday from 表 (注:全部字段写法相对于“*”的写法查询效率要高,但写法比较麻烦)

2.查询部分列 select 字段1, 字段2……. from 表

3.别名查询( 别名作用是方便观看和处理数据)查询时可以给表、列指定别名,关键字: AS

SELECT 字段1 AS 别名1,字段2 AS 别名2……. from 表 或者 SELECT 字段1 别名1,字段2 别名2……. from 表 ; AS 可以不写

4.清除重复值 ( 查询指定列并且数据不出现重复 ): SELECT DISTINCT 字段1,字段2...... FORM 表

5.查询结果进行运算 ( 注意:参与计算列必须是数值类型 )

5.1与固定值计算: SELECT 列名1+固定值 FROM 表

5.2列与列计算 : SELECT 列1+ 列2 FROM 表

6.条件查询 SELECT * From 表 WHERE 字段 = 值

数据库运维的变革,经历从手工造到脚本化、系统化、平台化、智能化的转变,逐步实现DBA对数据库的规范化、自动化、自助化、可视化、智能化、服务化管理,从而保障数据库的安全、稳定、高效运行。

MySQL则是目前最流行的关系型数据库,网上的学习资料也十分充足,这是一件好事,但是但小课堂依然推荐一定要看一看 《MySQL DBA工作笔记》 这本书

本书是根据ACE,腾讯云TVP,资深DBA,一线数据库专家多年运维经验凝聚成简,自已多年工作历程,点滴积累,从理论到实践,从开发规范视角到运维基本 *** 作,从业务需求到架构优化,全面阐述如何使用和运维好MySQL数据库,此书必将使你受益良多。

此书是 全面理解新时代DBA技术转型思路和运维心得 的最佳选择,是 透彻解析MySQL运维管理、架构优化和运维开发 的指路明灯;话不多说,跟着小课堂一起看一下!!!

第1章MySQL发展和技术选型

第2章理解MySQL体系结构

第3章MySQL基础运维面面观

第4章SQL开发规范和基础

第5章MySQL运维管理实践

第6章MySQL查询优化

第7章MySQL事务和锁

第8章MySQL集群和高可用设计

第9章MySQL性能测试

第10章基于业务的数据库架构设计

第11章运维开发基础

第12章自动化运维架构设计和规划

第13章MySQL运维基础架构设计

第14章MySQL运维管理模块设计

第15章运维自助化服务

MySQL作为现在最火的数据库,火爆程度不用我们来说,小课堂相信,这本来自一线数据库专家的 《MySQL DBA工作笔记》 一定能给大家带来巨大的收获,也能进一步推进MySQL的发展。

数据库作为应用开发中必不缺少的基础设施,其性能直接影响应用的整体运行速度。MySQL是目前最广泛使用的关系型数据库之一,对于开发人员写出性能良好的SQL是必备的基本技能之一。下面简单描述下编写SQL的注意事项。

编写高质量的SQL需要从以下几个方面注意,基本原则、表字段注意事项、索引使用注意事项、SQL注意事项。

基本原则

一、尽量不要在数据库里做运算。如果遇到运算尽可能在应用程序层进行计算。

二、控制数据库表数量、控制单表数据量、控制表的字段数。建议单库不要超过四百张表,建议单表字段不要超过五十个,建议单表的数据量不要超过一千万。

三、不要编写大SQL、不要使用大事务。SQL尽量写的简单点拒绝编写大SQL,可以将大SQL拆分成多个小SQL,在应用层聚合。大事务拆分成多个小事务,快速提交。

表字段注意事项

一、选择合适数值字段类型。能用小字段类型的就用小字段类型,如tinyint就比int(1)在表示小数据时合适。

二、能用数字表示就不要用字符。如可以用无符号INT存储IP而不是字符串表示。

三、避免使用NULL字段。原因NULL字段查询优化难,含NULL复合索引失效。

四、少用或拆分TEXT/BLOB字段。字段太大需要更多的空间,性能低下,如需使用拆分到单独表。

五、不要在表字段中存储图片。

索引使用注意事项

一、合理添加索引。索引添加太多会影响更新速度。能够使用复合索引的避免加多个单独索引。

二、字符字段建立前缀索引。

三、不在索引列做运算。索引列做运算会导致索引失效。

四、尽量不使用外建。

SQL类注意事项

一、 SQL语句尽可能简单。大SQL拆分成多个小SQL。

二、事务编写尽量短小。事务即开即用用完立即关闭。

三、尽量不要使用select *。只取需要的列。

四、改写OR为IN或者改写为UNION *** 作。OR在数据量大的时候性能低于IN。

五、避免NOT、!=、>、NOT IN、NOT EXISTS、NOT LIKE等查询。

六、避免%前缀模糊查询。

七、能用UNION ALL不要用UNION。

八、GROUP BY中去除排序。自带排序。

九、同类型的字段做比较。字符类和字符类比较,数值类和数值类比较,不要混在一起比较。

十、尽量单表查询,尽量不要多表关联查询。多表关联查询可以拆分成单表查询在应用程序中聚合数据。

十一、复合索引的多列注意最左原则。

上述注意事项能避免很多性能低下的SQL,希望在开发过程中能引起注意。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6162427.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存