2019-03-12

1、整理今天所学的知识点

、、、、、、、、、、、、、、、、、、、、、、、、、、

2、内置函数

1、字符串

1、length

select LENGTH("abc中国");

select ename,LENGTH(ename) from EMP;

2、concat

select CONCAT("a","bc","xx");

3、str_to_date

select STR_TO_DATE("2018年02月03日","%Y年%m月%d日");

create table tt(

id int auto_increment primary key,

birthday date

);

insert into tt(birthday) values("2018-2-4");

insert into tt(birthday) values(STR_TO_DATE("2018年02月03日","%Y年%m月%d日"));

select * from tt;

2、数字

1、floor,ceil

select FLOOR(1.56),CEIL(1.16);

2、rand

select RAND(10);

3、日期

1、now

select NOW();

select DAYOFWEEK('2018-08-26');

2、date_format  日期转字符串

select DATE_FORMAT(NOW(),"%Y年%m月%d日 %H时%i分%s秒");

select DATE_FORMAT("2018-2-3","%Y年%m月%d日");

2、视图

创建视图

create view myview

as

select avg(sal) avg_sal,deptno from EMP group by deptno;

使用视图

select * from myview;

3、事务

下订单:

1、insert订单表

2、update商品表

3、insert物流表

.......

转账:

1、update转出

2、update转入

3、insert交易记录

.......

事务:

事务开始

增删改语句

事务提交/回滚

目的:让多个操作同生共死,保证数据的正确性。

drop table bank;

create table bank(

id int primary key,

money int

);

insert into bank values(1,10);

insert into bank values(2,1);

select * from bank;

begin;

update bank

set money = money-5

where id = 1;

update bank

set money = money+5

where id = 2;

rollback;

commit;

select * from bank;

begin;

savepoint p1;

update bank

set money = money-1

where id = 1;

savepoint p2;

update bank

set money = money-1

where id = 1;

savepoint p3;

update bank

set money = money-1

where id = 1;

savepoint p4;

rollback to p4;

commit;

4、账户管理

1、root登陆

mysql -uroot -p

2、选择数据库

use mydb

3、创建用户并授权

grant select,insert on mydb.* to 'laowang'@'%' identified by '123456'

4、修改权限

grant 权限名称 on 数据库 to 账户@主机 with grant option;

5、修改密码

update user set authentication_string=password('新密码') where user='用户名';

6、登陆测试

mysql -ulaowang -p

、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

2、sql函数,整理30个。

、、、、、、、、、、字符串函数、、、、、、、、、、、、、、

1.[if !supportLists]·      查看字符的ascii码值ascii(str),str是空串时返回0

select ascii('a');

2.[if !supportLists]·        查看ascii码值对应的字符char(数字)

select char(97);

3.[if !supportLists]·        拼接字符串concat(str1,str2...)

select concat(12,34,'ab');

4.[if !supportLists]·       包含字符个数length(str)

select length('abc');

5.left(str,len)返回字符串str的左端len个字符

6.right(str,len)返回字符串str的右端len个字符

7.substring(str,pos,len)返回字符串str的位置pos起len个字符

select substring('abc123',2,3);

8.ltrim(str)返回删除了左空格的字符串str

9.rtrim(str)返回删除了右空格的字符串str

10.trim([方向 remstr from str)返回从某侧删除remstr后的字符串str,方向词包括both、leading、trailing,表示两侧、左、右

select trim('  bar   ');

select trim(leading 'x' FROM 'xxxbarxxx');

select trim(both 'x' FROM 'xxxbarxxx');

select trim(trailing 'x' FROM 'xxxbarxxx');

返回由n个空格字符组成的一个字符串space(n)

select space(10);

11.替换字符串replace(str,from_str,to_str)

select replace('abc123','123','def');

12. lower(str)大写转小写

13. upper(str)小写转大写

select lower('aBcD');

                                                数学函数

14 求绝对值abs(n)

select abs(-32);

15. 求m除以n的余数mod(m,n),同运算符%

select mod(10,3);

select 10%3;

16.地板floor(n),表示不大于n的最大整数

select floor(2.3);

17.天花板ceiling(n),表示不小于n的最大整数

select ceiling(2.3);

18. 求四舍五入值round(n,d),n表示原数,d表示小数位置,默认为0

select round(1.6);

19.求x的y次幂pow(x,y)

select pow(2,3);

20. 获取圆周率PI()

select PI();

21. 随机数rand(),值为0-1.0的浮点数

select rand();

、、、、、、、、、日期函数、、、、、、、、、、、

22. year(date)返回date的年份(范围在1000到9999)

23. month(date)返回date中的月份数值

24. day(date)返回date中的日期数值

25. hour(time)返回time的小时数(范围是0到23)

26. minute(time)返回time的分钟数(范围是0到59)

27. second(time)返回time的秒数(范围是0到59)

28.• 日期格式化date_format(date,format),format参数可用的值如下

 获取年%Y,返回4位的整数

* 获取年%y,返回2位的整数

* 获取月%m,值为1-12的整数

29. 获取日%d,返回整数

* 获取时%H,值为0-23的整数

* 获取时%h,值为1-12的整数

* 获取分%i,值为0-59的整数

获取秒%s,值为0-59的整数

/*日期-->字符串*/

select date_format('2017-10-20','%Y年%m月%d日')

/*字符串-->日期*/

select str_to_date('2017年10月20日','%Y年%m月%d日')

30.• 当前日期current_date()

select current_date();

• 当前时间current_time()

select current_time();

• 当前日期时间now()

select now();


、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

3、实现sql字符串转日期,日期转字符串



、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、


4、实现python字符串转日期,日期转字符串



、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

5、安装pymysql,使用python代码实现增删改查。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容