随笔00
1.对表达式,条件语句与运算练习
条件查询:select * from student where Sname = '李云';
2.运算与查询:
对指定列运算
select S , Sage ,Sage + 5 from student where Sname = '王菊';
范围查询(between和and)
Select Sname from student where Sage > 15 and Sage<30;
select Sname from student where Sage between 20 and 40;
模糊查询(like)
select * from teacher where Tname like '%德'
3.SQL常见常用函数:
Count函数:
select count(S) as 学生人数 from student
Sum函数:
select s as 学号,sum(score) as 总成绩 from sc group by s;
Avg函数:
select s as 学号,avg(score) as 平均成绩 from sc group by s;
6.常用子句
Where子句
select * from student where Sname = '郑竹';
Group by子句
select s,count(c) from sc group by s;
Order by子句
select s ,c ,score from sc order by score;
Having子句
select s,avg(score) from sc group by s having avg(score) >= 60;
子句的简单综合应用:
select S ,Sname ,Sage ,Ssex from student where Ssex = '男' or Sname like '钱%' group by S order by Sage asc;
- 表的联合
表的最简单联合
select * from student ,course;
等值联合:
select * from student a,sc b where a.S = b.s;
select * from student a,sc b where a.S = b.s and a.S = 3;
不等值联合:
select * from student a,sc b where a.S > b.s
- 子查询,嵌套查询
select * from sc where S in (select S from student where Sage > 25);
常用语句语法总结:
创建数据库:
CREATE DATABASE database_name
创建数据表
CREATE TABLE table_name
创建视图
CREATE VIEW view_name
删除表
DROP TABLE table_name
删除视图
DROP VIEW view_name
删除数据库
DROP DATABASE database_name
向表中插入值
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
用select方法向表中插入值
INSERT INTO table_name ( field1, field2,...fieldN ) SELECT
value1,
value2,
...valueN
FROM
table_name2;create index;
更新数据表数据
UPDATE UPDATE
table_name
SET field1 = new - value1,
field2 = new - value2
删除数据表中数据
DELETE
FROM
table_name [ WHERE Clause ]
删除表中的i字段
ALTER TABLE testalter_tbl DROP i;
向表中添加i字段并定义数据类型
ALTER TABLE testalter_tbl ADD i INT;
修改表中字段数据类型
ALTER TABLE testalter_tbl MODIFY c CHAR ( 10 );
修改表中字段名和数据类型
ALTER TABLE testalter_tbl CHANGE i j BIGINT;
修改表中名称
ALTER TABLE testalter_tbl RENAME TO alter_tbl;
创建索引
CREATE INDEX indexName ON table_name ( column_name )
用alter添加索引
ALTER table tableName ADD INDEX indexName(columnName)
删除索引
Drop index index_name on table_name;
查看当前表索引
Show index from table_name;
MySQL时间相关函数
between and语句:如between '1949-07-01' and '2049-10-01',时间范围输出‘1949-07-01 00:00:00’到'2049-10-01 00:00:00'之间的数据
timestampdiff:
格式:timestampdiff(interval,datetime1,datetime2)
用于返回日期或日期时间表达式之间的整数差,datetime2-datetime1
比较的单位interval可以为以下数值:
FRAC_SECOND:毫秒
SECOND:秒
MINUTE:分钟
HOUR:小时
DAY:天
WEEK:星期
MONTH:月
QUARTER:季度
YEAR:年
timediff(time1,time2):两个时间相减,得到相减(time1减time2)之后的时间“差值”
datediff:
格式:DATEDIFF(date1,date2)
用于返回两个日期之间的差值,date1-date2
date_format:
date_format(date, formate):用于以不同的格式显示日期/时间数据,将时间日期格式按照指定格式输出,date 参数是合法的日期,format 规定日期/时间的输出格式。
加减某个时间间隔:date_add()与 date_sub()函数
date_add('2019-12-12', interval 1 day) dayTime :加一天
date_add('2019-12-12', interval 1 month) monthTime:加一月
date_add('2019-12-12', interval 1 year) yearTim:加一年
date_sub('2019-12-12', interval 1 day) dayTime:减一天
date_sub('2019-12-12', interval 1 month) monthTime:减一月
date_sub('2019-12-12', interval 1 year) yearTime:减一年
weekofyea:weekofyear函数是计算出当前日期所在周数
格式:weekofyear( date )
yearweek:
YEARWEEK 是获取年份和周数的一个函数,函数形式为 YEARWEEK(date[,mode]),其中第二个参数为可选参数,范围[0,7],填写不同的参数效果不同
WEEK(date, mode)函数:
查看给定日期属于哪个周数
date是要获取周数的日期。
mode是一个可选参数,用于确定周数计算的逻辑。它允许您指定本周是从星期一还是星期日开始,返回的周数应在0到52之间或0到53之间
week(时间)默认从0开始,星期天默认为第一天,及国外的算法
week(时间,1)从1开始,星期一为第一天,及国内算法
MONTH:
MONTH函数返回一个整数,表示指定日期值的月份。
MONTH函数接受一个DATE或DATETIME值的参数。 它返回1到12之间的整数,范围从1到12。
如果通过零日期,例如0000-00-00,则MONTH函数返回0,如果日期为NULL,则MONTH函数返回NULL。
now(),curdate(),curtime()函数
now()函数返回日期加时间,如‘2021-11-14 11:24:45’
curdate()函数返回日期,如‘2021-11-14’
curtime()函数返回时间,如‘11:24:45’
CURRENT_TIME() -- 11:24:45和curtime()函数结果一样
CURRENT_DATE() -- 2021-11-14 和 CURDATE() 函数结果一样
CURRENT_TIMESTAMP() -- 2021-11-14 11:24:45 和now()结果 一样
docker关闭redis等容器:docker stop redis
docker启动redis等容器:docker start redis查看docker
有哪些在运行的容器:docker ps
查看docker中已退出的容器(已有容器,可直接restart命令重启):docker ps -a
查看docker本地有哪些镜像:docker images
开启docker:systemctl start docker
重启docker:systemctl restart docker
查看docker状态:systemctl status docker
关闭docker:systemctl stop docker
删除docker中镜像:docker rmi 镜像id
删除docker中容器:docker rm 容器id
启动镜像,进入容器:docker run redis
重启容器:docker restart [CONTAINER ID/NAMES]
进入容器:docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
进入数据库容器:docker exec -it MySQL name bash
size(),length,length()的区别:
length——数组的属性;
length()——String的方法;
size()——集合的方法;
.通过 show variables like 'character_set_database' 查看数据库字符集。
查看其它字符集信息:
1. 用户会话字符集:show variables like 'character_set_client' ;
2. 连接字符集 : show variables like 'character_set_connection';
3. 查询结果字符集 :show variables like 'character_set_results';
设置编码格式:
set character_set_client='utf8';
set character_set_connection='utf8';
set char_set_server='utf8';
修改数据库编码:
alter database XXX character set utf8;

浙公网安备 33010602011771号