
Mysql
文章平均质量分 54
Mysql相关内容
剁椒鱼不要头
这个作者很懒,什么都没留下…
展开
-
编程规范
1、注释- -/**/2、缩进代码难以阅读的首要原因是没有进行缩进,其次是没有对长代码划分模块,所有的都揉在一起好的示例select col_1, col_2, col_3, count(*) from tab where col_1 = 'a' and col_2 = ( select max (col_2) from tab2 where col_3 = 100 .原创 2021-01-31 18:52:46 · 127 阅读 · 0 评论 -
SQL优化
1、参数是子查询时,使用exists替代in,或者使用连接替代in,虽然in非常方便,但是会成为性能瓶颈2、会进行排序的代表性运算有:group byorder by聚合函数(sum count avg max min)distinct集合运算符(union intersect except)窗口函数(rank row_number等)通过指定带索引的列作为group by和order by的列,可以实现高速查询3、使用索引时,条件表达式的左侧应该是原始字段,把运算的表达式放到查询条件的.原创 2021-01-31 18:45:59 · 127 阅读 · 0 评论 -
三值逻辑
1、sql语言里除了true和false,还有第三个值unknown2、null既不是值也不是变量,它只是一个表示没有值的标记,而比较谓词只适用于值,因此对并非值的null使用比较谓词本来就没有意义,对null使用比较谓词后得到的结果总是unknown3、三个真值之间的优先顺序:(1) and的情况 false>unknown>true(2) or 的情况 true>unknown>false4、case表达式和where一样,只认可真值true的条件,而不会认可.原创 2021-01-31 18:35:41 · 727 阅读 · 0 评论 -
SQL进阶
1、为了提高sql代码的可移植性,避免使用oracel中的decode和mysql中的if函数,而使用标准的case函数,与decode相比,case函数中可以使用in、like、< >等谓词,表达能力较强2、使用case函数时,when子句要注意条件的排他性3、case函数中的else是可选的,如果不写,其结果为else null,但是最好养成习惯写上4、group by中可以使用select子句中简单case函数指定的别名,但是只能在postgresql和mysql中使用,在orac.原创 2021-01-31 18:31:24 · 242 阅读 · 0 评论 -
MySQL正则表达式
mysql中的正则表达式匹配自3.23.4版本后不区分大小写,如果需要可以使用BINARY关键字,如where name regexp binary ‘Jack.000’正则表达的分类:1、基本字符匹配% 匹配任意字符. 匹配任意一个字符| 匹配其中之一 100|200[] 匹配几个字符之一 [123]等价于1|2|32、匹配范围[0-9][a-z]3、匹配特殊字符为了匹配特殊字符,必须用\为前导如:为了匹配反斜杠()字符本身,需要使用\\ ,其他还有\. \- \?\也可以用.原创 2021-01-31 17:55:03 · 203 阅读 · 0 评论 -
窗口函数
1、窗口函数也称为OLAP函数,意思是对数据库数据进行实时分析处理,mysql目前不支持窗口函数2、窗口函数大体分为两类(1) 能够作为窗口函数的函数,sum avg count max min(2) rank dense_rank row_number等专用窗口函数3、窗口函数兼具分组和排序两种功能:rank() over(partition by order by )其中partition by能够设定排序的对象范围,order by能够指定按照哪一列、何种顺序进行排序,partion by.原创 2021-01-31 17:44:30 · 454 阅读 · 0 评论 -
集合
1、加法union表的加法union(并集),会对表数据进行除重,如果要包含重复项则加all注意:(1)作为运对象的记录的列数必须相同(2)作为运算对象的记录中列的类型必须一致(3)可以使用select语句,但是order by子句只能在最后使用一次2、乘法intersect表的乘法intersect(交集),应用于两张表,选取出它们当中公共的记录,如果保留重复行则加all,mysql尚不支持3、减法记录的减法except,mysql尚不支持,oracle中使用的是minus4、uni.原创 2021-01-31 17:22:43 · 105 阅读 · 0 评论 -
常用函数
1、abs绝对值2、mod求余3、round四舍五入4、||拼接,进行字符串拼接时,如果其中包含null,则结果也是null且该函数在sql server 和mysql中无法使用,sql server中使用+mysql中使用concat函数5、length字符串长度,sql server中使用len,注意同样是这个函数,不同dbms的执行结果也不尽相同6、lower小写转换7、upper大写转换8、replace字符串替换9、substring字符串截取postg.原创 2021-01-18 22:15:19 · 126 阅读 · 0 评论 -
事务和视图
一、 事务事务是需要在同一个处理单元中执行的一系列更新处理的集合,对于银行转账这种需要在同一个处理单元中执行的一系列更新操作的情况,一定要使用事务1、创建事务(1) SQL Server、PostgreSQLbegain transaction(2) MySQLstart transaction(3) Oracle、DB2无2、commit是提交事务包含的全部更新处理的结束指令,相当于文件处理中的覆盖保存,一旦提交,就无法恢复到事务开始前的状态了3、ROLLBACK是取消事务包含的全部.原创 2021-01-18 21:57:00 · 265 阅读 · 0 评论 -
SQL基础知识
1、有代表性的关系型数据库有:OracleSQL ServerDB2PostgreSQLMySQL2、SQL语句分为三类(1) DDL,数据定义语言CREATE DROP ALTER(2) DML,数据操纵语文INSERT SELECT UPDATE DELETE(3)DCL,数据控制语言COMMIT ROLLBACK GRANT REVOKE3、建表语句create table <表名>(<列名1> <数据类型> <该列所需约束&g.原创 2021-01-17 21:34:10 · 422 阅读 · 0 评论 -
Linux_Mysql_5.6.24安装
1、确认本机是否已安装Mysql执行命令:rpm -qa|grep mysql若显示版本,则表明之前已有安装,在安装现版本前需将旧版本卸载2、卸载旧版本Mysql执行命令:rpm -e --nodeps mysql-libs-xxxx7.el6.x86_643、下载安装包方式一、从官网下载:https://www.mysql.com/downloads/方式二、从优快云资源快速下...原创 2020-02-11 13:22:22 · 1113 阅读 · 0 评论