2021-02-05

MySQL知识

1、服务端工具程序:mysqld(SQL后台程序,该程序运行后客户端才能连接服务器访问数据库)。

2、启动MySQL服务:net start mysql(以管理员身份运行),停止MySQL服务:net stop mysql。登录MySQL数据库:mysql -h hostname -u username -p

3、查看数据库:show databases; 创建数据库:create database database_name; 删除数据库:drop database database_name(不能恢复);进入数据库:use database_name;

4、创建表: create table table_name(字段名 数据类型 约束 默认值,…);,表名不区分大小写。查看数据库中的表:show tables;

5、创建主键和外键,主键:字段名 类型 primary key 或者 [constraint 约束名] primary key 字段名,外键:[constraint 外键名] foreign key 从表字段名 references 主表名 主表字段名 。外键约束不能跨引擎使用。

6、unique 允许字段为空并且允许出现多个空值。primary key 不允许为空且只能有一个声明。

7、auto_increment默认初始值为1,一个表只能有一个字段使用该自增约束且该字段必须为主键的一部分。

8、查看表结构:describe/desc tb_name 和 show create table tb_name。

9、修改表名:alter table 旧表名 rename [to] 新表名,修改字段数据类型:alter table 表名 modify 字段名 数据类型,修改字段名:alter table 表名 change 旧字段 新字段 新数据类型,添加字段:alter table 表名 add 新字段 数据类型 [约束条件] [ first |after 已存在的字段名],删除字段:alter table 表名 drop 字段名,修改字段排列顺序:alter table 表名 modify 字段名 数据类型 firts | after 字段。删除表外键约束:alter table 表名 drop foreign key 外键约束名。

10、mysql默认引擎:InnoDB,查看存储引擎:show engines,更改存储引擎:alter table 表名 engine= 引擎名。

11、删除表:drop table [if exists] 表1,表2;

12、CURRENT_DATE:当前日期,CURRENT_TIME:当前时间,now():当前日期和时间。

13、bin()函数把数字转换成2进制。least(值1,值2,…)返回最小值。greatest(v1,v2,…)返回最大值

14、MySQL的除法(/)是真除,和Java的(/)不一样。

15、regexp: expr regexp 匹配条件。MySQL位运算后的数值是64位无符号整数。

16、MySQL数学函数。abs(x):返回x的绝对值。pi():返回圆周率。sqrt(x):平方根函数。mod(x,y):求余函数,例mod(45.5,6)=3.5。ceil(x)或ceiling(x):返回不小于x的最小整数,类型为bigint。floor(x):返回不大于x的最大值,类型为bigint。rand():返回值 v (0<=v<=1)。round(x):对x进行四舍五入,返回整数。round(x,y):y为正数时保留到小数点后y位,y为负数时保留到小数点左边相应位数不进行四舍五入直接保存为0。truncate(x,y):同round,但是直接截取不进行四舍五入。sign(x):返回参数的符号,x为负、0、正时返回-1、0、1。pow(x,y)或power(x,y):返回x的y次方。exp(x):返回e的x次方。log(x):返回x的自然对数(基数为e)。log10(x):返回x的基数为10的对数。radians(x):将x由角度转为弧度。degrees(x):将x由弧度转为角度。sin(x)和asin(x):正弦和反正弦函数,x为弧度值。cos(x)和acos(x)。tan(x)和atan(x)和cot(x)。

17、MySQL字符串函数。char_length(str):返回str包含的字符个数。length(str):返回字符串的字节长度。concat(s1,s2,…):返回连接后的字符串。concat_ws(x,s1,s2,…):返回用x分隔符连接的字符串。insert(s1,x,len,s2):替换字符串的函数,s1字符串从下标x(下标从1开始)开始的len个字符替换成s2,返回替换后的字符串。lower(str)或lcase(str):将str全部转换成小写。upper(str)或ucase(str):将字符串str全部转化成大写。left(s,n)、right(s,n):返回s从左边、右边开始的n个字符。lpad(s1,len,s2)、rpad(s1,len,s2):填充字符串函数,在s1左边、右边填充s2直到s1长度为len,若s1长度大于len则返回值被缩短至len。ltrim(s)、rtrim(s)、trim(s):删除s左边、右边、两边的空字符串后返回。trim(s1 from s):删除s两端所有的子字符串s1。repeat(s,n):返回n个重复s字符串拼接后的字符串,若n<=0,返回空字符串。space(n):返回n个空格组成的字符串。replace(s,s1,s2):返回使用s2替换s中所有的s1后的字符串。strcmp(s1,s2):比较字符串函数,s1小于、等于、大于s2,分别返回-1、0、1。substring(s,n [,len])或mid(s,n [,len]):返回s从n位置开始的len个字符组成的字符串,n为负数时代表从倒数第n个。locate(str1,str)、position(str1 in str)、instr(str,str1):返回子字符串str1在str中的开始位置(从1开始)。reverse(s):返回s的逆序。elt(n,s1,s2,s3,…):返回第n个字符串。field(s,s1,s2,…):返回s在字符串列表s1、s2、…中的位置,若没有返回0。find_in_set(s1,s2):返回s1在s2中出现的位置,s1中不能有逗号,s2中各子字符串用逗号分隔,若不存在返回0。make_set(x,s1,s2,…):用x的二进制(从右往左)选取字符串,例make_set(6,‘hello’,‘nice’,null,‘world’) -> nice,6的二进制为110,选取第2、3个子字符串,null不会添加到结果中。

18、日期函数:curdate()或current_date():返回日期。curtime()或current_time():返回时间。current_timestamp()、localtime()、now()、sysdate():返回日期和时间。unix_timestamp(date):不带参数date时返回自1970-01-01 00:00:00至现在的秒数作为无符号整数,带参数date时返回至date这个时间点的秒数。from_unixtime(date):与unix_timestamp()相反,根据秒数date返回时间。month(date):返回date对应的月份(1-12)。weekday(d):周一为0,周日为6。dayofmonth(d):返回一个月中的第几天(1-31)。year(date):返回年(1970-2069)。hour(time):返回小时。minute(time):返回分钟。second(time):返回秒。extract(type from date):返回日期中你所指定的部分。

19、其他函数:if(expr,v1,v2):如果expr为true返回v1,否则v2。ifnull(v1,v2):如果v1为空返回v2,否则返回v1。case expr when v1 then r1 else rn end;。version():返回MySQL版本号。connection_id():返回连接的次数。show full processlist:查看用户的当前连接。database()或schema():返回数据库名。password(str):加密函数。md5(str):加密函数。encode(str,pswd_str)/decode(en_str,pswd_str):加密与解密函数。conv(n,from_base,to_base):把数值n从from_base进制转换为to_base进制。

20、between and 前可以加not:not between and。group_concat(name):将每个分组中的字段连接。

21、存储过程和存储函数。

22、set session transaction isolation level read committed(已提交读)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值