发表于: 2018-03-25 20:34:37

2 415


今天完成的事情

1.学习并练习SQL语句

主要是insert,delete,update语句还有delect查询语句聚合函数分组查询

主要是delect查询语句配合上where,比较运算符和逻辑运算符还有各种各种聚合函授的查询

while条件的种类如下

比较运算符

>  <  <=   >=   =  <>

大于小于大于(小于)等于不等于

BETWEEN  ...AND...

显示在某一区间的值(含头含尾)

IN(set)

显示在in列表中的值:in(100,200)

LIKE 通配符

模糊查询,Like语句中有两个通配符

% 用来匹配多个字符first_name like ‘a%’;

_ 用来匹配一个字符first_name like ‘a_’;

IS NULL

判断是否为空

is null; 判断为空

is not null; 判断不为空

逻辑运算符

and

多个条件同时成立

or

多个条件任一成立

not

不成立:where not(salary>100);

聚合

count:统计指定列部位null的记录行数

distinct表示不计算重复值(*)表示统计该表的记录行数

sum:指定列的数值和如果指定数据类型不是数值类型那么计算结果为0;

max:指定列的最大值如果指定列是字符串类型那么使用字符串排序运算

min:指令列的最小值如果指定列是字符串类型那么使用字符串排序运算

avg:指定列的平均值如果指定数据类型不是数值类型那么计算结果为0;

 

select sun(s_num) from student

 

 

分组查询

group by 被分组的列名

必须跟随聚合函数 

select 查询的时候被分组的列必须出现在select选择列的后边

select sun(s_num),s_name from student1 group by s_name

 

  使用count()函数时如果指定列有数值为null则会略过

    

 

明天计划的事情

1.学习SQL部分的多表查询索引

2.开始学习JDBC部分

遇到问题

1.这种单语句一遍遍的练习很枯燥啊。。。

收获

1.DOS操作数据乱码解决

dos命令行操作中文时如果报错

ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'username' at row 1

原因:因为mysql的客户端编码的问题我们的是utf8,而系统的cmd窗口编码是gbk

解决方案临时解决方案):修改mysql客户端编码

show variables like 'character%'; 查看所有mysql的编码

在图中与客户端有关的编码设置:

client connetion result 和客户端相关

database server system 和服务器端相关 

    将客户端编码修改为gbk.

     set character_set_results=gbk; / set names gbk;

以上操作只针对当前窗口有效果如果关闭了服务器便失效如果想要永久修改通过以下方式:

   在mysql安装目录下有my.ini文件

default-character-set=gbk 客户端编码设置

character-set-server=utf8 服务器端编码设置

修改完成配置文件重启服务

 

         2.SQL语句更加的熟悉和熟练

           把MySQL和JAVA对应起来看

           数据表——类

           字段名(列名)——类的属性

           每行的数据——对象


返回列表 返回列表
评论

    分享到