- 博客(16)
- 收藏
- 关注
原创 java编译期提示非法向前引用
规则在类里边的静态 / 非静态语句块中,只能访问到在块之前定义的变量,在块之后定义的变量在块中只能进行赋值,但是不能访问。举例说明:public class Test { static { a = 0; //合法 System.out.println(a); //非法向前引用 } ...
2020-03-18 21:50:05 378
原创 MySql里边和查询成本计算相关的表及系统变量
整理自掘金小册《MySQL是怎样运行的:从根儿上理解MySQL》第13章,方便自己查找,做下记录。#查询表的统计数据show table status like 'table_name';#查看表的索引统计数据SHOW INDEX FROM table_name;#系统参数:eq_range_index_dive_limitSHOW VARIABLES LIKE 'eq_range...
2020-02-26 16:01:36 306
原创 java中Serializable接口
java.io.Serializable是一个标记接口,标记某个java对象可以被序列化/反序列化-. 继承了Serializable接口的类都需要有一个serialVersionUID常量,其声明为:private static final long serialVersionUID = 123456789L;serialVersionUID 常量可以显式声明,若无显式声明,编译器...
2020-02-24 14:45:46 499
原创 java中的clone()方法
功能创建并返回一个本对象的复制。复制的精确定义依赖于各个类的实现,一般来说,有:x.clone() != xx.clone().getClass() == x.getClass()x.clone().equals(x)说明Object的clone()方法是protect作用域的,需要在我们的类中实现Cloneable接口,重写覆盖Object的clone()方法,并把其作用域改为...
2020-02-19 10:26:18 419
原创 java不可变集合
在 java.util.Collections 工具类里边,存在着一群类似的静态(status)方法,他们的共同点是可以返回传入集合的不可变更视图,当我们需要不可变集合的时候,可以使用这些方法。这些方法有: Collection unmodifiableCollection(Collection<? extends T> c) List unmodifiableList(List...
2020-02-18 17:39:39 764
原创 MySql的null值及其处理
概述MySql中,null 值意味着"没数据"、"没有值"的意思。涉及到null值的运算规则比较运算符和算术算数运算符作用于null上,结果恒为null;除0运算发生时,结果也是null;某些函数作用在null上,结果是null,如:concact()函数。select null = null;结果:nullselect 1 + null;结果:nullselect 1 /...
2020-02-17 10:46:04 1254
原创 MySql中with rollup的使用
WITH ROLLUP使用with rollup,可以在group by的时候额外返回分组信息,避免多次查询统计,如:CREATE TABLE sales ( year INT, country VARCHAR(20), product VARCHAR(32), profit INT );SELECT year, country, prod...
2020-02-14 09:45:31 2500
原创 MySql中SQL_CALC_FOUND_ROWS和FOUND_ROWS函数的使用
作用在写分页程序时,常用的一条语句是:SELECT COUNT(*) FROM ... WHERE ...以此来获得记录的总数。除此以外,还可以通过SQL_CALC_FOUND_ROWS获得记录总数。SELECT SQL_CALC_FOUND_ROWS ... FROM ... WHERE ... LIMIT ...;SELECT FOUND_ROWS();此时,在执行第一条语句...
2020-02-13 12:00:41 2031
原创 Sql语句执行顺序
SQL语句形式<SELECT clause> [<FROM clause>] [<WHERE clause>] [<GROUP BY clause>] [<HAVING clause>] [<ORDER BY clause>] [<LIMIT clause>]执行顺序对from子句中的前两个表...
2020-02-12 11:13:22 98
原创 MySql中的子查询关键字用法
ALL、ANY、SOME形式:operand comparison_operator keyword (subquery)其中,comparison_operator是这些操作符中的一个:= > < >= <= <> !=keyword是All、Any、Some中的一个,下边分别说明:ALL:ALL关键字当操作数和子查询返回的所有值比较都...
2020-02-11 10:49:07 904
原创 MySql索引提示
介绍MySql索引提示(hint)用于告诉查询优化器在查询中如何选择索引,它跟在表名后边,形式是:tbl_name [[AS] alias] [index_hint_list] index_hint_list: index_hint [index_hint] ... index_hint: USE {INDEX|KEY}[FOR {JOIN|ORDER BY|GROUP BY}] ([...
2020-02-10 18:31:50 774
原创 MySql里truncate、delete和drop的区别
相同点:truncate和不带where子句的delete、以及drop都会删除表内的数据。drop、truncate都是DDL语句(数据定义语言),执行后会自动提交。不同点:truncate 和 delete 只删除数据不删除表的结构(定义)drop 语句将删除表的结构、被依赖的约束(constrain)、触发器(trigger)、索引(index);依赖于该表的存储过...
2020-01-19 16:22:45 147
原创 MySql命令记录
show full processlist;查询mySQL当前正在处理的所有查询。set autocommitset autocommit = 0:关闭mySQL事务自动提交。set autocommit = 1:开启mySQL事务自动提交。在一个session内有效。show global/session variables查看服务器/连接级别的系统变量,可以接like语句查看某个...
2020-01-18 17:44:14 145
原创 MySql语句记录
truncate table tablename;效果同不带where子句的delete相同,仅会删除表数据,不删除表结构;但是truncate table语句属于DDL语句,不会在删除时加事务,删除后也不可恢复。另一个区别是delete后不会真正释放表空间,而truncate table后会把表空间释放至低位水平。select SQL_CACHE / select SQL_NO_CACHE...
2020-01-18 17:40:43 179
原创 MySql函数记录
field(value, str1, str2, str3, …)返回value在str1,str2,str3,…里边的索引,如果值为null或者没有找到,就返回0。常用地方:把函数放在order by语句后实现自定义顺序排序.find_in_set(str,strlist)strlist是以逗号,分隔的字符串列表,函数会返回str在strlist里边从1到N的索引;需要注意的是,如果s...
2020-01-18 17:33:09 124
原创 centos7下mariaDb安装启动
安装查看是否已经安装过rpm -qa|grep mariadb安装yum install mariadb ##安装客户端yum install mariadb-server ##安装服务端yum install mariadb-devel ##安装开发用到的库启动、停止安装完可以用下列命令启动mariadb服务器程序systemctl ...
2020-01-18 17:08:30 1173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人